平台的 GoogleTest (GTest,有時也稱為「原生測試」) 通常會存取較低層級的 HAL,或對各種系統服務執行原始 IPC。因此,測試方法通常與受測服務緊密相關。
如要與持續測試基礎架構整合,請使用 GTest 架構建構 GTest。
範例
以下列舉幾個平台來源中的 GTest 範例:
步驟摘要
請按照範例 GTest 模組設定操作。
如要自動納入 GTest 依附元件,請在測試模組設定中使用
BUILD_NATIVE_TEST
建構規則。使用
mmm
建構測試模組,進行增量建構;使用mma
則可進行完整建構:make hwui_unit_tests -j
使用 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
使用 Trade Federation 測試架構執行測試:
make tradefed-all -j tradefed.sh run template/local_min --template:map test=hwui_unit_tests
手動安裝及執行:
將產生的測試二進位檔推送至裝置:
adb push ${OUT}/data/nativetest/hwui_unit_tests/hwui_unit_tests \ /data/nativetest/hwui_unit_tests/hwui_unit_tests
啟動 GTest,並在裝置上叫用測試二進位檔來執行測試:
adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
如要進一步瞭解如何自訂測試執行作業,請將
--help
參數新增至測試二進位檔。如要進一步瞭解參數,請參閱 GTest 進階指南。