Pengujian host arsip Java (JAR) harus diterapkan untuk memberikan cakupan kode lengkap software 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 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 JAR
pengujian {i>host<i}. Lihat contoh penggunaannya di:
frameworks/base/tools/powermodel/Android.bp
Setelan
Lihat di bawah untuk penjelasan tentang setelan berikut:
Setelan
name
diperlukan saat jenis moduljava_test_host
yang ditentukan (di awal blok). Setelan ini memberi nama pada modul Anda, dan JAR yang dihasilkan memiliki nama yang sama dan akhiran.jar
. Di kolom contoh di bawah ini,JAR pengujian yang dihasilkan diberi namaHelloWorldHostTest.jar
. Di beberapa Selain itu, setelan ini juga menentukan nama target {i>make<i} untuk modul Anda, jadi Anda dapat menggunakanmake [options] <HelloWorldHostTest>
untuk membuat pengujian modul dan semua dependensinya.name: "HelloWorldHostTest",
Setelan
test_suites
membuat pengujian mudah ditemukan oleh harness pengujian Trade Federation. Paket pengujian lainnya dapat ditambahkan di sini, seperti CTS, sehingga tes {i>host<i} JAR dapat dibagikan.test_suites: ["general-tests"],
Setelan
static_libs
menginstruksikan sistem build untuk menyertakan isi modul bernama ke dalam APK yang dihasilkan dari modul saat ini. Ini berarti setiap modul bernama diharapkan menghasilkan file.jar
. Konten modul digunakan untuk me-resolve referensi classpath selama waktu kompilasi dan dimasukkan ke dalam APK yang dihasilkan.static_libs: [ "junit", ],