GoogleTest (GTest, terkadang juga disebut "pengujian native") untuk platform biasanya mengakses HAL tingkat rendah atau melakukan IPC mentah terhadap berbagai layanan sistem. Oleh karena itu, pendekatan pengujian biasanya dikaitkan erat dengan layanan yang sedang diuji.
Untuk berintegrasi dengan infrastruktur pengujian berkelanjutan, bangun GTests 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_TEST
dalam konfigurasi modul pengujian Anda.Tulis konfigurasi pengujian, dengan mengikuti contoh untuk opsi sederhana dan kompleks.
Build modul pengujian dengan
mmm
untuk build inkremental, ataumma
untuk build lengkap:make hwui_unit_tests -j
Jalankan pengujian secara lokal menggunakan Atest:
atest hwui_unit_tests
Anda juga dapat menambahkan argumen ke GTests. Berikut adalah argumen yang sangat berguna:
native-test-flag
menentukan nilai flag tambahan yang akan diteruskan ke perintah shell GTest.native-test-timeout
menentukan 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 test harness Federasi Perdagangan:
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_tests
Instal dan jalankan 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_tests
Luncurkan GTest dan jalankan pengujian dengan memanggil biner pengujian di perangkat:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
Untuk mengetahui informasi selengkapnya tentang cara menyesuaikan eksekusi uji, tambahkan parameter
--help
ke biner pengujian Anda. Untuk informasi selengkapnya tentang parameter, lihat panduan lanjutan GTest.