TDD迅速UygulamaGeliştirmeninfaydalarıve Xcode da Swift迅速XCTestkullanımı

测试驱动开发(TDD)可以帮助您完成测试驱动开发(TDD)

Genellikleyanlışbirkanıolarak单元测试yazmanınuygulamageliştirmesüresiniuzatacağıdüşünülüyor。 Halbukiuygulamamızdaöncedenunit testleriyazılmasıdaha kolay birşekildeyapılacakişlevintasarlanabilmesinisağlar。 布达下摆tasarım下摆işlevintestinde bize zamankazandırdığıgibi kodu daha iyiyapılandırabilmemizede olanaksağlar。 Bu nedenle unit testler ile uygulamageliştirmemizdaha sonraoluşacakmuhtemelbuglarıdaöncesindetespitedebileceğimiziçinuygulamageliştirmesüresiniazaltacaktır。

Uygulamamızınkod kalitesiniartırarakdaha az bir bug ilegeliştirebiliriz。 单元测试器下摆pozitif下摆negatif caseler ile beraberyazdığımızdaolabilecekbirçokfarkli案例测试etmeolanağınakavuşmuzoluruz。 Buda iyi testedilmişve daha az bugiçerenkodyazmamızısağlayacaktır。

Yazdığımız单元测试仪daha sonra uygulamadakioluşabilecekdiğerbuglarıtespit etmemizde bizeoldukçakolaylıksağlayacaktır。 Budauygulamamızdakigelecek olanbuglarıçözmesüremiziönemliölçüdeazaltacaktır。

Teamcity gibi CI( Continus Integration)单元测试人员, Jenkins单元, 测试系统(SUT)(测试中) prensibine uygunsürekliolarak测试,edilen biruygulamamızolur。 Projedeyapılan她的承诺sonrasındaunit testleriçalıştırdığımızdasistemindeğişikliklerleberabersağlıklıbirşekildeçalıştığındaneminolmuşoluruz。 Muhtemeloluşabilecekbuglarıcommitsonrasındaerken tespit ederekçözümünüsağlamışoluruz。

单元testleri sadece birişlevi测试etmekamacıylakullanıyoruz。 关注分离• 单一责任原则分离 责任原则 。 Uygulama mimarisini bunagöregerektiğiyerlerde重构ederek kod kalitemizi deartırmışoluyoruz。

Şimdi突出单元testlerinasılEntegreedeceğimizebakalım。 Xcode可以通过UnitTestkullanacağımızı进行测试。

Xcode bizim模板bir UnitTest class’ioluşturuyor。

单元测试类XCTestCase在测试类库中的作用 @testable key ile projeye ekliyoruz。 测试分类测试测试模块测试测试后缀为oluruz。的后缀为:imkarışıklığınındaönünegeçmişoluruz。 认证类别’i icin测试yazmak istiyorsa 认证测试olarak isimlendirebiliriz。

Şimdiçoğunluklakullanacağımızbir web servisçağrısıiçinnasıl单元测试yazacağımızabakalım。

单元测试类的默认值是olarak setUp()和 TearDown()方法。 她的单元测试方法是setUp()fonksiyonuçağrılır。 Bu fonksiyonda测试来自gerekli olan ilkdeğerleriverebiliriz。 Yineaynışekilde她的单元测试了一个元测试Sonra tearDown()方法otomatik olarakçağrılır。 单元测试由kullanılankaynaklarıserbestbırakabiliriz进行。

单位testleri属olarak 红绿重构 sırasıylayazılırlar。 Yaniöncetesti失败了edecek kodu yazarakbaşlarız儿子isetenenişlevigerçekleştirenvebaşarılıolacak olan koduyazarız。 单元测试ile beraber gerekliolduğundauygulamadaki kodu重构ederek作证devam ederiz。

单元测试方法常规olarakbazıyazımkurallarınauymamızgerekir。 Örnekolarak iOS程序设计dillerindeki单元测试yazımındakullanılanAAA 编排-Assert prensibine uygun olarak单元测试kodunu 3bölümhalinde 给出了-何时-时bloklarındayazarız。

鉴于 bölümündetest dekullanacağımızparametrelerihazırlarız。 bölümündetestiniyapacağımız方法çağrısınıyaparız。 BizimörneğimizdeWebservisçağrısıyapıyoruz。 然后, bölümündeisesonuçlarıbeklediğimizdeğerlerileaynıolupolmadığınınkontrollünüyaparız。 Bu kontrolleri Xcode’un bizesağladığı 断言 fonksiyonlarıile kolay birşekildeyapabiliriz。

Webservis服务器状态等待超时(超时:2)方法。 Webservis超时,超时时间到了。 Web应用程序的Web站点身份验证authenticationExpectation.fullfill()方法访问Web站点。

Bir Makalenin daha sonuna geldik。 UygulamalarınızdaUnitTestkullanmayıeksik etmemenizdileğiylebir sonraki makaledegörüşmeküzerekendinize iyibakın..