Dobrze skonstruowane projekty oprogramowania wymagają zwykle wielu testów jednostkowych. W przypadku projektów w języku Java najpowszechniejszą platformą do testowania jednostkowego jest JUnit. J2ObjC zapewnia obsługę testów jednostkowych, dzięki czemu można je uruchamiać jako pliki binarne w OS X. Pozwala to zweryfikować, czy tłumaczenie nie zmieniło semantyki (zachowania) przetłumaczonych klas i sprawdzić, czy przetłumaczony kod działa jako kod w języku Objective-C.
Testy tłumaczenia
Uruchom polecenie j2objc z elementem junit.jar
w ścieżce klasy. Kopia tego pliku jar znajduje się w dystrybucji j2objc o nazwie 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
Testy połączeń
Połącz się z biblioteką libjunit.a
w katalogu lib/
dystrybucji J2ObjC, używając flagi -l
kompilatora:
${J2OBJC_HOME}/j2objcc -ObjC -o mytest -ljunit MyUnitTest.m
Przeprowadzane testy
Uruchom testowy plik wykonywalny z nazwami co najmniej jednego testu lub pakietu testowego, na przykład testy JUnit są uruchamiane w Javie. Nazwy mogą być w pełni kwalifikowaną nazwą Java (z pakietem) lub jej odpowiednikiem w postaci przetłumaczonej nazwy. Na przykład klasę testową com.company.MyUnitTest
można też określić jako ComCompanyMyUnitTest
.
./mytest org.junit.runner.JUnitCore com.company.MyUnitTest # or com.company.Test2
org.junit.runner.JUnitCore
to jeden z testów uruchamiających JUnit, który umożliwia przeprowadzanie testów JUnit3 lub JUnit4. Możesz jednak użyć dowolnego innego programu uruchamiającego JUnit.
Testy budowlane
Dobrym przykładem użycia make
do kompilowania i przeprowadzania dużej liczby testów jednostkowych jest plik j2objc/jre_emul/tests.mk w kodzie źródłowym projektu.