Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Tes Host JAR (Java)

Pengujian host JAR harus diterapkan untuk menyediakan cakupan kode lengkap perangkat lunak Anda. Ikuti petunjuk untuk Membangun pengujian unit lokal . Tulis tes unit kecil untuk memvalidasi fungsi tertentu dan tidak lebih.

Contoh

File Blueprint berikut menyediakan contoh pengujian host JAR Hello World 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

Sebuah snapshot dari 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 tes 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 untuk modul Anda, dan JAR yang dihasilkan memiliki nama yang sama dan akhiran .jar . Pada contoh di bawah, JAR pengujian yang dihasilkan 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 Anda dan semua dependensinya.

    name: "HelloWorldHostTest",
    
  • Pengaturan test_suites membuat tes mudah ditemukan oleh test harness Trade Federation. 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 build untuk memasukkan konten modul bernama ke dalam APK yang dihasilkan dari modul saat ini. Artinya setiap modul yang diberi nama diharapkan menghasilkan file .jar . Konten modul digunakan untuk menyelesaikan referensi classpath selama waktu kompilasi dan dimasukkan ke dalam APK yang dihasilkan.

    static_libs: [
        "junit",
    ],