ควรใช้การทดสอบโฮสต์ Java Archive (JAR) เพื่อให้ครอบคลุมโค้ดทั้งหมดของซอฟต์แวร์ ทำตามวิธีการเพื่อสร้างการทดสอบหน่วยในเครื่อง เขียนการทดสอบหน่วยขนาดเล็กเพื่อตรวจสอบฟังก์ชันที่เฉพาะเจาะจงและไม่มีอะไรเพิ่มเติม
ตัวอย่าง
ไฟล์ Blueprint ต่อไปนี้เป็นตัวอย่างการทดสอบโฮสต์ JAR แบบง่ายที่แสดงข้อความ "Hello World" ซึ่งคุณสามารถคัดลอกและปรับให้เหมาะกับความต้องการได้ platform_testing/tests/example/jarhosttest/Android.bp
ซึ่งตรงกับโค้ดทดสอบจริงที่พบใน platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java
ภาพรวมของไฟล์ Blueprint มีดังนี้
java_test_host {
name: "HelloWorldHostTest",
test_suites: ["general-tests"],
srcs: ["test/**/*.java"],
static_libs: [
"junit",
"mockito",
],
}
java_test_host
การประกาศที่จุดเริ่มต้นระบุว่านี่คือการทดสอบโฮสต์ JAR
ดูตัวอย่างการใช้งานได้ที่
frameworks/base/tools/powermodel/Android.bp
การตั้งค่า
ดูคำอธิบายการตั้งค่าต่อไปนี้ได้ที่ด้านล่าง
ต้องมีการตั้งค่า
name
เมื่อระบุประเภทโมดูลjava_test_host
(ที่จุดเริ่มต้นของบล็อก) การตั้งค่านี้จะตั้งชื่อให้โมดูล และ JAR ที่ได้จะมีชื่อเดียวกันและมีคำต่อท้าย.jar
ใน ตัวอย่างด้านล่าง ไฟล์ JAR ของการทดสอบที่ได้จะมีชื่อว่าHelloWorldHostTest.jar
นอกจากนี้ การตั้งค่ายังกำหนดชื่อเป้าหมายการสร้างสำหรับโมดูลด้วย เพื่อให้คุณใช้make [options] <HelloWorldHostTest>
เพื่อสร้างโมดูลทดสอบและการอ้างอิงทั้งหมดได้name: "HelloWorldHostTest",
test_suites
การตั้งค่าช่วยให้ Trade Federation Test Harness ค้นหาการทดสอบได้ง่าย คุณเพิ่มชุดการทดสอบอื่นๆ ได้ที่นี่ เช่น CTS เพื่อให้แชร์การทดสอบโฮสต์ JAR ได้test_suites: ["general-tests"],
การตั้งค่า
static_libs
จะสั่งให้ระบบบิลด์รวมเนื้อหาของโมดูลที่มีชื่อไว้ใน APK ที่ได้จากโมดูลปัจจุบัน ซึ่งหมายความว่าโมดูลที่มีชื่อแต่ละโมดูลควรสร้างไฟล์.jar
ระบบจะใช้เนื้อหาของโมดูลเพื่อแก้ไขการอ้างอิง classpath ในระหว่าง เวลาคอมไพล์และรวมไว้ใน APK ที่ได้static_libs: [ "junit", ],