Traduction des tests JUnit

Les projets logiciels bien conçus comportent généralement de nombreux tests unitaires pour les vérifier. Pour les projets Java, JUnit est le framework de test unitaire le plus courant. J2ObjC fournit prise en charge de la traduction des tests unitaires, afin qu'ils puissent être exécutés en tant que binaires sur OS X. Cela permet de vérifier que la traduction n'a pas modifié la sémantique (comportement) des classes traduites et vérifie que le code traduit s'exécute en tant que code Objective-C.

Traduire les tests

Exécutez j2objc avec junit.jar dans le chemin de la classe. Une copie de ce fichier JAR est incluse dans le fichier j2objc distribution, nommée 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

Tests d'association

Associez la bibliothèque libjunit.a dans le répertoire lib/ de la distribution J2ObjC à l'aide de la commande l'indicateur -l du compilateur:

${J2OBJC_HOME}/j2objcc -ObjC -o mytest -ljunit MyUnitTest.m

Exécution des tests

Exécutez l'exécutable de test avec les noms d'un ou de plusieurs tests et/ou suites de tests, comme les tests JUnit s'exécuter en Java. Les noms peuvent être soit le nom complet de Java (avec package), soit des noms équivalents son nom traduit. Par exemple, la classe de test com.company.MyUnitTest peut également être spécifiée en tant que ComCompanyMyUnitTest

./mytest org.junit.runner.JUnitCore com.company.MyUnitTest  # or com.company.Test2

org.junit.runner.JUnitCore est l'un des exécuteurs de test JUnit, qui peut exécuter JUnit3 ou JUnit4. tests. Cependant, tout autre exécuteur JUnit peut être utilisé.

Créer des tests

Voici un bon exemple d'utilisation de make pour créer et exécuter un grand ensemble de tests unitaires j2objc/jre_emul/tests.mk, dans le le code source du projet.