GoogleTest

適用於平台的 GoogleTest (GTest,有時也稱為「原生測試」) 通常會存取較低層級的 HAL 或針對不同系統執行原始 IPC 免費 Google Cloud 服務因此,測試方法通常會緊密結合 測試受測試的服務

如要與持續測試基礎架構整合,請建立 GTest 使用 GTest 這個架構的重點在於

範例

以下是平台來源中的 GTest 範例:

步驟摘要

  1. 請按照 GTest 模組設定範例操作。

  2. 如要自動納入 GTest 依附元件,請在測試模組設定中使用 BUILD_NATIVE_TEST 建構規則。

  3. 根據簡單的範例,編寫測試設定 和複雜選項。

  4. 使用 mmm 建構測試模組 (適用於漸進式版本),或使用 mma 建構完整版 版本:

    make hwui_unit_tests -j
    
  5. 使用 Atest 在本機執行測試:

      atest hwui_unit_tests
    

    您也可以在 GTest 中新增引數。以下是特別實用的引數:

    • native-test-flag 會指定要傳送至 GTest 殼層指令的其他旗標值。
    • native-test-timeout 可指定測試逾時值 (以微秒為單位)。

      以下範例程式碼使用這兩種引數:

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
         --module-arg test-name:native-test-timeout:60000
      
  6. 使用 Trade Federation 測試輔助程式執行測試:

    make tradefed-all -j
    tradefed.sh run template/local_min --template:map test=hwui_unit_tests
    
  7. 手動安裝並執行:

    1. 將產生的測試二進位檔推送至裝置:

       adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \
       /data/nativetest/hwui_unit_tests/hwui_unit_tests
      
    2. 透過在裝置上叫用測試二進位檔來啟動 GTest 並執行測試:

       adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

      如要進一步瞭解如何自訂測試執行作業,請新增 --help 參數至測試二進位檔案。如要進一步瞭解參數,請參閱 GTest 進階指南