Pengujian host JAR

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

Contoh

File Cetak Biru 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 sebenarnya yang dapat ditemukan di: platform_testing/tests/example/jarhosttest/test/android/test/example/helloworld/HelloWorldTest.java

Snapshot file Blueprint disertakan di sini untuk memudahkan:

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

Setelan

Lihat di bawah untuk mengetahui penjelasan setelan berikut:

  • Setelan name diperlukan saat jenis modul java_test_host ditentukan (di awal blok). Setelan ini memberi nama untuk modul, dan JAR yang dihasilkan memiliki nama yang sama serta akhiran .jar. Di kolom contoh di bawah ini,JAR pengujian yang dihasilkan diberi nama HelloWorldHostTest.jar. Selain itu, setelan ini juga menentukan nama target pembuatan untuk modul Anda, sehingga Anda dapat menggunakan make [options] <HelloWorldHostTest> untuk mem-build modul pengujian dan semua dependensinya.

    name: "HelloWorldHostTest",
    
  • Setelan test_suites membuat pengujian mudah ditemukan oleh Trade Tes federasi. Test suite lain dapat ditambahkan di sini, seperti CTS, sehingga pengujian host JAR dapat dibagikan.

    test_suites: ["general-tests"],
    
  • Setelan static_libs menginstruksikan sistem build untuk menggabungkan konten modul yang dinamai ke dalam APK yang dihasilkan dari modul saat ini. Artinya, setiap modul yang diberi nama diharapkan akan menghasilkan file .jar. Konten modul digunakan untuk me-resolve referensi classpath selama waktu kompilasi dan digabungkan ke dalam APK yang dihasilkan.

    static_libs: [
        "junit",
    ],