GoogleTest (GTest, terkadang juga disebut "pengujian native") untuk platform biasanya mengakses HAL tingkat bawah atau melakukan IPC mentah terhadap berbagai layanan sistem. Oleh karena itu, pendekatan pengujian biasanya terkait erat dengan layanan yang sedang diuji.
Untuk berintegrasi dengan infrastruktur pengujian berkelanjutan, bangun GTest Anda menggunakan framework GTest.
Contoh
Berikut beberapa contoh GTest di sumber platform:
Ringkasan langkah
Ikuti contoh penyiapan modul GTest.
Untuk menyertakan dependensi GTest secara otomatis, gunakan aturan build
BUILD_NATIVE_TESTdalam konfigurasi modul pengujian Anda.Tulis konfigurasi pengujian, dengan mengikuti contoh untuk opsi sederhana dan kompleks.
Bangun modul pengujian dengan
mmmuntuk build inkremental, ataummauntuk build lengkap:make hwui_unit_tests -jJalankan pengujian secara lokal menggunakan Atest:
atest hwui_unit_testsAnda juga dapat menambahkan argumen ke GTest. Berikut adalah argumen yang sangat berguna:
native-test-flagmenentukan nilai flag tambahan yang akan diteruskan ke perintah shell GTest.native-test-timeoutmenentukan nilai waktu tunggu pengujian dalam mikrodetik.Contoh kode berikut menggunakan kedua argumen ini:
atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \ --module-arg test-name:native-test-timeout:60000
Jalankan pengujian dengan harness pengujian Trade Federation:
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_testsMenginstal dan menjalankan secara manual:
Kirim biner pengujian yang dihasilkan ke perangkat Anda:
adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_testsLuncurkan GTest dan jalankan pengujian dengan memanggil biner pengujian di perangkat:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_testsUntuk mengetahui informasi selengkapnya tentang menyesuaikan eksekusi pengujian, tambahkan parameter
--helpke biner pengujian Anda. Untuk mengetahui informasi selengkapnya tentang parameter, lihat panduan lanjutan GTest.