2014-04-07 25 views
6

iOS uygulamamızda bir test paketini entegre etmek istiyoruz. Genel bir fikre sahip olmak için, bu uygulama web servislerini kullanıyor, cihazdaki dosyaları kaydediyor ve bazı karmaşık navigasyon parçalarına sahip. gereksinimleri: - Jenkins ile testler paketi çalıştırmak - cihazlar ve iOS sürümleri bir dizi test takımı başlatmak mümkün olmanın - Calabash Biz wereiOS test çerçevelerini seçme

önermektedir gibi biz açıkça olmayan devs tarafından okunabilir bir şey gerekmez bazı iş akışı testlerini (bir ekrandan diğerine getirme etkileşimi) ve ünite testini yapmayı düşünün. Biz biraz googled ama makaleler genellikle mobil dünyada Paleolitik dönem gibi en az 2 yaşında. Ama yine de, bazı güzel ilk girdiler veriyor. Birim Test için

, biz düşünüyorduk:

  • Kabak:

    • GHUnit
    • XCTest
    • kivi iş akışı testi için

    , biz düşünüyorduk

  • , herkes herhangi bir tavsiye bir çerçeve ya da diğer (veya başka bir önermeyi) seçti görür tüm Mentionned gereksinimi olarak

Calabash?

Geri bildiriminiz için teşekkür ederiz.

ps: bu arada, konuyla ilgili bulduk bazı ilginç makaleler yardımcı olabilir: http://blog.lesspainful.com/2012/03/07/Calabash-iOS/ http://iosunittesting.com/faq/

+1

https://stackoverflow.com/questions/4114083/ios-tests-specs-tdd-bdd-and-integration-acceptance-testing –

+0

'un olası kopyası Bu diğer gönderi yardımcı olur, ancak yine de Mobile'daki eski bir gönderidir dünya. Uygulama iş akışını test etmek için Calabash'den bile bahsetmiyor. Bunun üzerine, her projenin belirli gereksinimleri vardır ve tüm çerçeveler hoş karşılanmaz. Böylece ihtiyaçlarımızla ilgili tavsiyelerde bulunuyoruz. – Toka

+0

Bu UI testi ve tüm araçların durumu hakkında yeni bir tartışma için lütfen youtube'daki [MCE 2014: Drew Crawford - UI testlerinin suiistimali] konusundaki bu konuşmayı inceleyin (http://www.youtube.com/watch?v = h1TRkDSmnOc). –

cevap

2

ben çeşitli nedenlerle birim testleri için kivi tavsiye:

  • Bu iç içe destekler Her birinin kendi kurulum ve gözyaşı blokları olabilir. Bu, testlerin daha fazla DRY olmasını sağlar. XCTest sadece bir dosyadaki tüm testler için kullanılan bir kurulum ve gözyaşı yöntemine sahiptir. Kiwi'nin yuvalanmış bağlamları ile, bağlamları nasıl tanımladığınıza bağlı olarak, tüm testlerinizin değil, bazılarının öncesinde yapılan kurulum koduna sahip olabilirsiniz.
  • Kivi, ihtiyaç duyulduğunda alaycı/bağımlılık bağımlılıkları için büyük desteğe sahiptir. Ben OCMock daha sağlam olması için bulduk (OCMock ile alaylanmış sınıf yöntemleri -stopMocking çağırırsanız, testten sonra takılı OCMock her zaman, her bir testten sonra mocked sınıf yöntemlerini yırttığı emin olun).

İş akışı/uygulama testlerinde deneyimli değilim, ancak sonunda KIF ve UIAutomation'ı kontrol etmeyi planlıyorum.

Test kitaplıkları hakkında daha kapsamlı bir tartışma için iOS Tests/Specs TDD/BDD and Integration & Acceptance Testing numaralı telefonu incelemenizi tavsiye ederim.