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 moduljava_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 namaHelloWorldHostTest.jar
. Selain itu, setelan ini juga menentukan nama target pembuatan untuk modul Anda, sehingga Anda dapat menggunakanmake [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", ],