İyi tasarlanmış yazılım projelerinde genellikle bunları doğrulamak için pek çok birim testi yapılır. Java projelerinde JUnit en yaygın birim test çerçevesidir. J2ObjC, birim testlerini çevirmek için destek sağlar. Böylece testler, OS X'te ikili program olarak yürütülebilir. Bu işlem, çevirinin çevrilmiş sınıfların semantiğini (davranışı) değiştirmediğini doğrular ve çevrilen kodun Objective-C kodu olarak çalıştığını doğrular.
Testleri Çevirme
Sınıf yolunda junit.jar
ile j2objc komutunu çalıştırın. Bu jar dosyasının bir kopyası lib/j2objc_junit.jar
adlı j2objc dağıtımına eklenir:
# 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
Bağlantı Oluşturma Testleri
Derleyicinin -l
işaretini kullanarak J2ObjC dağıtımının lib/
dizinindeki libjunit.a
kitaplığına bağlantı oluşturun:
${J2OBJC_HOME}/j2objcc -ObjC -o mytest -ljunit MyUnitTest.m
Testleri Çalıştırma
Bir veya daha fazla test ve/veya test paketinin adıyla yürütülebilir testi çalıştırın (ör. Java'da JUnit testlerinin çalıştırılması). Adlar, tam nitelikli Java adı (paketle birlikte) veya çevrilmiş ad olabilir. Örneğin, com.company.MyUnitTest
test sınıfı ComCompanyMyUnitTest
olarak da belirtilebilir.
./mytest org.junit.runner.JUnitCore com.company.MyUnitTest # or com.company.Test2
org.junit.runner.JUnitCore
, JUnit'in JUnit3 veya JUnit4 testlerini çalıştırabilen test çalıştırıcılarından biridir. Yine de başka herhangi bir JUnit çalıştırıcısı kullanılabilir.
Bina Testleri
Büyük bir birim testi grubu oluşturup çalıştırmak için make
kullanımıyla ilgili iyi bir örnek, proje kaynak kodundaki j2objc/jre_emul/tests.mk örneğidir.