โครงการซอฟต์แวร์ที่ออกแบบมาอย่างดีมักจะมีการทดสอบ 1 หน่วยจำนวนมากเพื่อยืนยัน สำหรับโปรเจ็กต์ Java JUnit คือเฟรมเวิร์กการทดสอบหน่วยที่นิยมใช้กันมากที่สุด J2ObjC ให้การสนับสนุนการแปลหน่วยการทดสอบ ดังนั้นจึงสามารถดำเนินการเป็นไบนารีบน OS X ได้ วิธีนี้จะช่วยยืนยันว่าการแปลไม่ได้เปลี่ยนความหมาย (ลักษณะการทำงาน) ของคลาสที่แปลแล้ว และยืนยันว่าโค้ดที่แปลทำงานเป็นโค้ด Objective-C
การทดสอบการแปล
เรียกใช้ j2objc ด้วย junit.jar
ในคลาสพาธ สำเนาของไฟล์ 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
การทดสอบการลิงก์
ลิงก์กับไลบรารี libjunit.a
ในไดเรกทอรี lib/
ของการแจกแจง J2ObjC โดยใช้แฟล็ก -l
ของคอมไพเลอร์ ดังนี้
${J2OBJC_HOME}/j2objcc -ObjC -o mytest -ljunit MyUnitTest.m
การทดสอบที่ทำงานอยู่
เรียกใช้ไฟล์ปฏิบัติการทดสอบที่มีชื่อของการทดสอบและ/หรือชุดทดสอบอย่างน้อย 1 รายการ เช่น มีการเรียกใช้การทดสอบ JUnit ใน Java ชื่ออาจเป็นชื่อ Java ที่มีคุณสมบัติครบถ้วน (มีแพ็กเกจ) หรือชื่อที่แปลแล้วที่เทียบเท่าก็ได้ ตัวอย่างเช่น อาจระบุคลาสการทดสอบ com.company.MyUnitTest
เป็น ComCompanyMyUnitTest
./mytest org.junit.runner.JUnitCore com.company.MyUnitTest # or com.company.Test2
org.junit.runner.JUnitCore
เป็นหนึ่งในตัวดำเนินการทดสอบของ JUnit ซึ่งทำการทดสอบ JUnit3 หรือ JUnit4 ก็ได้ แต่จะใช้ตัวเรียกใช้ JUnit อื่นๆ ได้
การทดสอบการสร้าง
ตัวอย่างที่ดีของวิธีใช้ make
เพื่อสร้างและเรียกใช้การทดสอบหน่วยจำนวนมากคือใน j2objc/jre_emul/tests.mk ในซอร์สโค้ดของโปรเจ็กต์