Kerangka apa yang ada untuk unit test kode Objective-C? Saya ingin kerangka kerja yang terintegrasi dengan baik dengan Apple Xcode.
330
Kerangka apa yang ada untuk unit test kode Objective-C? Saya ingin kerangka kerja yang terintegrasi dengan baik dengan Apple Xcode.
Jawaban:
Xcode mencakup XCTest, yang mirip dengan OCUnit , kerangka kerja pengujian unit Objective-C, dan memiliki dukungan penuh untuk menjalankan tes unit berbasis XCTest sebagai bagian dari proses pembangunan proyek Anda. Dukungan pengujian unit Xcode dijelaskan dalam Ikhtisar Xcode: Menggunakan Tes Unit .
Kembali ke Xcode 2 hari, saya menulis serangkaian posting weblog tentang bagaimana melakukan beberapa tugas umum dengan pengujian unit Xcode:
Meskipun menggunakan OCUnit daripada XCTest, konsepnya sebagian besar sama.
Akhirnya, saya juga menulis beberapa posting tentang cara menulis tes untuk antarmuka pengguna Kakao; cara Cocoa terstruktur membuatnya relatif mudah, karena Anda tidak perlu memutar loop peristiwa atau semacamnya dalam kebanyakan kasus.
Hal ini memungkinkan untuk melakukan pengembangan yang digerakkan oleh tes tidak hanya untuk kode level model Anda tetapi juga kode level controller dan bahkan level tampilan Anda.
sumber
Lihat GHUnit oleh Gabriel Handford:
sumber
Saya mulai menggunakan rig pengujian kotak alat Google untuk iPhone, dan itu berhasil bagi saya.
google-toolbox-for-mac
sumber
Lihat OCUnit . Jaringan pengembang Apple memiliki pengenalan yang bagus .
sumber
Perhatikan bahwa proyek Google Toolbox untuk Mac (GTM) hanya memperluas / menambah kerangka kerja SenTestingKit Apple (yang didasarkan pada OCUnit). Seperti yang mereka katakan di situs proyek:
Perhatikan komentar berikut tentang pengujian antarmuka pengguna:
Lihat halaman " Verifikasi Kode dan Pengujian Unit " untuk instruksi tentang cara menggunakannya.
sumber
Saya sampai pada kesimpulan bahwa GHUnit adalah kerangka pengujian paling canggih untuk Objective-C. Saya telah melakukan pengumpulan kerangka kerja pengujian di blog saya. Ini adalah yang paling fleksibel dalam hal penyebaran (iphone, simulator atau mac os native) dan menegaskan kemampuan. Karena didasarkan pada GTM, ia mewarisi semua kelebihan GTM dibandingkan SenTestingKit tetapi juga menambahkan lebih banyak. Bonus lainnya adalah tetap dipertahankan dengan sangat aktif.
Saya telah melakukan upaya untuk mengintegrasikan OCMock ke GHUnit, ini bekerja dengan sangat baik !. Anda bisa mendapatkan kode di github .
sumber
Saya menyadari ini adalah pertanyaan lama, tetapi jika Anda lebih suka pengujian gaya BDD (rspec, Jasmine, dll.) Daripada pengujian gaya xUnit (Uji :: Unit, JSUnit, JUnit, dll.), Maka Anda dapat mempertimbangkan untuk memeriksa Cedar . Cedar membawa pengujian gaya BDD ke Objective-C, sekarang bahasanya mendukung penutupan.
Kami dengan senang hati menggunakan Cedar untuk proyek iOS kami di Pivotal Labs , dan kami secara aktif berupaya memperbaikinya. Setiap umpan balik atau saran diterima di [email protected]
sumber
Saya juga akan merekomendasikan menggunakan alat cakupan untuk melihat bagian mana dari kode yang ditutupi dengan tes unit dan mana yang tidak. Cakupan garis dasar dan kode cabang dapat dihasilkan dengan alat GCOV . Jika Anda ingin menghasilkan laporan cakupan HTML yang bagus, ada LCOV dan ZCOV yang melakukan hal itu.
sumber
Saya merekomendasikan gh-unit, ia memiliki GUI yang bagus untuk hasil tes.
http://github.com/gabriel/gh-unit/tree/master
sumber
The dukungan Unit Testing dibundel dalam Xcode (untuk setup sederhana) dikombinasikan dengan ocrunner (untuk beberapa autotest / Growl kebaikan) saat ini sedang diatur favorit saya obj-C Unit Testing.
sumber
di sini banyak sekali dari mereka
List_of_unit_testing_frameworks di Objective-C
sumber
Sen: te (pencipta kerangka pengujian yang disertakan dengan Xcode) menjelaskan cara menggunakan OCUnit dengan proyek iPhone: simple-iphone-ipad-unit-test .
sumber
Matt Gallagher dari Cocoa with Love memiliki artikel yang sangat bagus tentang pengujian unit.
sumber
Saya sarankan melihat ke Kiwi, kerangka kerja pengujian BDD open source untuk iOS: Kiwi
Lihatlah WIKI proyek untuk memulai atau mendapatkan buku Daniel Steinberg "Uji Mengemudi Pengembangan iOS dengan Kiwi" test-driving-ios-development
sumber
Saya menggunakan SimpleUnitTest berfungsi dengan iPhone dan iPad libs.
http://cbess.blogspot.com/2010/05/simple-iphone-ipad-unit-test.html
Itu datang dengan Templat Xcode tes unit untuk dengan mudah menambahkan kelas uji unit. Membungkus GTM.
Anda benar-benar dapat menjatuhkannya ke proyek aktif dan mulai menambahkan tes unit dalam 3 menit (atau kurang).
sumber
Specta adalah kerangka kerja TDD (Test Driven Development) / BDD (Behavior Driven Development) modern yang berjalan di atas XCTest. Ini mendukung pengujian unit untuk proyek iOS dan Mac OS X.
sumber
Saya harap Anda dapat menggunakan 'SenTestKit', dari mana Anda dapat menguji setiap metode.
sumber