Tes host JAR

Tes host arsip Java (JAR) harus diterapkan untuk menyediakan cakupan kode lengkap perangkat lunak Anda. Ikuti instruksi untuk Membuat pengujian unit lokal . Tulis pengujian unit kecil untuk memvalidasi fungsi tertentu dan tidak lebih.

Contoh

File Blueprint berikut memberikan contoh pengujian host Hello World JAR sederhana untuk disalin dan disesuaikan dengan kebutuhan Anda: platform_testing/tests/example/jarhosttest/Android.bp

Ini sesuai dengan kode pengujian aktual yang ditemukan di: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java

Cuplikan file Blueprint disertakan di sini untuk kenyamanan:

java_test_host {
    name: "HelloWorldHostTest",

    test_suites: ["general-tests"],

    srcs: ["test/**/*.java"],

    static_libs: [
        "junit",
        "mockito",
    ],
}

Deklarasi java_test_host di awal menunjukkan bahwa ini adalah pengujian host JAR. Lihat contoh penggunaannya di: frameworks/base/tools/powermodel/Android.bp

Pengaturan

Lihat di bawah untuk penjelasan pengaturan berikut:

  • Pengaturan name diperlukan ketika tipe modul java_test_host ditentukan (di awal blok). Pengaturan ini memberi nama pada modul Anda, dan JAR yang dihasilkan memiliki nama dan akhiran .jar yang sama. Pada contoh di bawah, hasil tes JAR diberi nama HelloWorldHostTest.jar . Selain itu, pengaturan ini juga menentukan nama target make untuk modul Anda, sehingga Anda dapat menggunakan make [options] <HelloWorldHostTest> untuk membangun modul pengujian dan semua dependensinya.

    name: "HelloWorldHostTest",
    
  • Pengaturan test_suites membuat pengujian mudah ditemukan oleh test harness Federasi Perdagangan. Rangkaian pengujian lain dapat ditambahkan di sini, seperti CTS, sehingga pengujian pengujian host JAR dapat dibagikan.

    test_suites: ["general-tests"],
    
  • Pengaturan static_libs menginstruksikan sistem pembangunan untuk memasukkan konten modul bernama ke dalam APK yang dihasilkan dari modul saat ini. Artinya, setiap modul bernama diharapkan menghasilkan file .jar . Konten modul digunakan untuk menyelesaikan referensi classpath selama waktu kompilasi dan dimasukkan ke dalam APK yang dihasilkan.

    static_libs: [
        "junit",
    ],