การทดสอบโฮสต์ JAR, การทดสอบโฮสต์ JAR, การทดสอบโฮสต์ JAR, การทดสอบโฮสต์ JAR

การทดสอบโฮสต์ Java archive (JAR) ควรถูกนำมาใช้เพื่อให้ครอบคลุมโค้ดที่สมบูรณ์ของซอฟต์แวร์ของคุณ ทำตามคำแนะนำเพื่อ สร้างการทดสอบหน่วยในเครื่อง เขียนการทดสอบหน่วยขนาดเล็กเพื่อตรวจสอบฟังก์ชันเฉพาะและไม่มีอะไรเพิ่มเติม

ตัวอย่าง

ไฟล์ Blueprint ต่อไปนี้จัดเตรียมตัวอย่างการทดสอบโฮสต์ Hello World JAR แบบง่ายๆ เพื่อคัดลอกและปรับให้เข้ากับความต้องการของคุณ: 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 สามารถค้นพบการทดสอบได้อย่างง่ายดาย สามารถเพิ่มชุดการทดสอบอื่นๆ ที่นี่ เช่น CTS เพื่อให้สามารถแบ่งใช้การทดสอบการทดสอบโฮสต์ JAR ได้

    test_suites: ["general-tests"],
    
  • การตั้งค่า static_libs สั่งให้ระบบบิลด์รวมเนื้อหาของโมดูลที่มีชื่อลงใน APK ผลลัพธ์ของโมดูลปัจจุบัน ซึ่งหมายความว่าแต่ละโมดูลที่กำหนดชื่อจะต้องสร้างไฟล์ . .jar เนื้อหาของโมดูลใช้สำหรับแก้ไขการอ้างอิงคลาสพาธระหว่างเวลาคอมไพล์และรวมเข้ากับ APK ที่เป็นผลลัพธ์

    static_libs: [
        "junit",
    ],