Proyek perangkat lunak yang direkayasa dengan baik biasanya memiliki banyak pengujian unit untuk memverifikasinya. Untuk project Java, JUnit adalah framework pengujian unit yang paling umum. J2ObjC menyediakan dukungan untuk menerjemahkan pengujian unit sehingga dapat dijalankan sebagai biner di OS X. Tindakan ini memastikan bahwa terjemahan tersebut tidak mengubah semantik (perilaku) class yang diterjemahkan, dan memverifikasi bahwa kode yang diterjemahkan berjalan sebagai kode Objective-C.
Menerjemahkan Pengujian
Jalankan j2objc dengan junit.jar
di classpath. Salinan file jar ini disertakan dalam distribusi
j2objc, dengan nama lib/j2objc_junit.jar
:
# Example: J2ObjC bundle unzipped into a ~/tools directory
export J2OBJC_HOME=~/tools/j2objc
${J2OBJC_HOME}/j2objc -classpath ${J2OBJC_HOME}/lib/j2objc_junit.jar MyUnitTest.java
Menautkan Pengujian
Tautkan dengan library libjunit.a
di direktori lib/
distribusi J2ObjC, menggunakan
flag -l
compiler:
${J2OBJC_HOME}/j2objcc -ObjC -o mytest -ljunit MyUnitTest.m
Menjalankan Pengujian
Jalankan pengujian yang dapat dieksekusi dengan nama satu atau beberapa pengujian dan/atau rangkaian pengujian, seperti pengujian JUnit yang
dijalankan di Java. Nama tersebut dapat berupa nama Java yang sepenuhnya memenuhi syarat (dengan paket), atau nama terjemahan
yang setara. Misalnya, class pengujian com.company.MyUnitTest
juga dapat ditentukan sebagai
ComCompanyMyUnitTest
.
./mytest org.junit.runner.JUnitCore com.company.MyUnitTest # or com.company.Test2
org.junit.runner.JUnitCore
adalah salah satu runner pengujian JUnit, yang dapat menjalankan pengujian JUnit3 atau JUnit4. Namun, runner JUnit lainnya dapat digunakan.
Membuat Pengujian
Contoh yang baik tentang cara menggunakan make
untuk membuat dan menjalankan serangkaian besar pengujian unit adalah di j2objc/jre_emul/tests.mk, dalam kode sumber project.