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
namediperlukan ketika tipe moduljava_test_hostditentukan (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 namaHelloWorldHostTest.jar. Selain itu, pengaturan ini juga menentukan nama target make untuk modul Anda, sehingga Anda dapat menggunakanmake [options] <HelloWorldHostTest>untuk membangun modul pengujian Anda dan semua dependensinya.name: "HelloWorldHostTest",Pengaturan
test_suitesmembuat 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_libsmenginstruksikan 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", ],