GoogleTest

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 sangat terkait dengan layanan yang diuji.

Untuk berintegrasi dengan infrastruktur pengujian berkelanjutan, buat GTest menggunakan framework GTest.

Contoh

Berikut beberapa contoh GTest dalam sumber platform:

Ringkasan langkah

  1. Ikuti contoh penyiapan modul GTest.

  2. Untuk menyertakan dependensi GTest secara otomatis, gunakan aturan build BUILD_NATIVE_TEST dalam konfigurasi modul pengujian.

  3. Tulis konfigurasi pengujian, dengan mengikuti contoh untuk opsi sederhana dan kompleks.

  4. Buat modul pengujian dengan mmm untuk build inkremental, atau mma untuk build lengkap:

    make hwui_unit_tests -j
    
  5. Jalankan pengujian secara lokal menggunakan Atest:

      atest hwui_unit_tests
    

    Anda juga dapat menambahkan argumen ke GTest. 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
      
  6. Jalankan pengujian dengan test harness Trade Federation:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. Instal dan jalankan secara manual:

    1. 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
      
    2. 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 pengujian, tambahkan parameter --help ke biner pengujian. Untuk mengetahui informasi selengkapnya tentang parameter, lihat panduan lanjutan GTest.