잘 엔지니어링된 소프트웨어 프로젝트에는 일반적으로 검증을 위한 단위 테스트가 많이 있습니다. Java 프로젝트의 경우 JUnit은 가장 일반적인 단위 테스트 프레임워크입니다. J2ObjC 제공 OS X에서 바이너리로 실행할 수 있도록 단위 테스트 변환을 지원합니다. 이것은 번역이 번역된 클래스의 의미 (동작)를 변경하지 않고 변환된 코드는 Objective-C 코드로 실행됩니다.
번역 테스트
클래스 경로에서 junit.jar
로 j2objc를 실행합니다. 이 jar 파일의 사본이 j2objc에 포함되어 있습니다.
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
연결 테스트
다음을 사용하여 J2ObjC 배포의 lib/
디렉터리에 있는 libjunit.a
라이브러리와 연결합니다.
컴파일러의 -l
플래그:
${J2OBJC_HOME}/j2objcc -ObjC -o mytest -ljunit MyUnitTest.m
테스트 실행
JUnit 테스트와 같이 하나 이상의 테스트 또는 테스트 모음의 이름으로 테스트 실행 파일을 실행합니다.
실행할 수 있습니다 이름은 정규화된 Java 이름 (패키지 포함)이거나
번역된 이름입니다. 예를 들어 com.company.MyUnitTest
테스트 클래스는 다음과 같이 지정할 수도 있습니다.
ComCompanyMyUnitTest
입니다.
./mytest org.junit.runner.JUnitCore com.company.MyUnitTest # or com.company.Test2
org.junit.runner.JUnitCore
는 JUnit3 또는 JUnit4를 실행할 수 있는 JUnit 테스트 실행기 중 하나입니다.
있습니다 하지만 다른 JUnit 실행기를 사용할 수 있습니다.
빌드 테스트
make
를 사용하여 대규모 단위 테스트 세트를 빌드하고 실행하는 방법에 관한 좋은 예는
j2objc/jre_emul/tests.mk의
소스 코드를 가져옵니다.