Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

原生測試

平台的本機測試通常訪問較低級別的HAL或針對各種系統服務執行原始IPC。因此,測試方法通常與被測服務緊密結合。

使用gtest框架構建本機測試。這是與連續測試基礎架構集成的先決條件。

例子

以下是平台源中的本機測試的一些示例:

步驟摘要

  1. 請參閱以下示例本機測試模塊設置: frameworks / base / libs / hwui / tests / unit /
  2. 測試模塊配置應使用BUILD_NATIVE_TEST構建規則,以便自動包含gtest依賴項
  3. 編寫測試配置。請參閱簡單復雜的選項。
  4. 使用mmmmma構建測試模塊(取決於它是增量構建還是完整構建),例如:

    make hwui_unit_tests -j
    
  5. 使用Atest在本地運行測試:

    atest hwui_unit_tests
    
    1. 您還可以將參數添加到本機測試。一些特別有用的標誌是native-test-flag ,它指定要傳遞給本機測試的shell命令的其他標誌值和native-test-timeout ,它允許您以微秒為單位指定測試超時值。

      atest test-name -- --module-arg test-name:native-test-flag:"\"argument1 argument2\"" \
      --module-arg test-name:native-test-timeout:60000
      
  6. 使用行業聯合會測試工具運行測試:

    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. 通過在設備上調用測試二進製文件來執行測試:

      adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
      

    這將啟動本機測試。您還可以在測試二進製文件中添加--help參數,以了解有關自定義測試執行的不同方式的更多信息。最後,有關更多參數及其用法,請參見gtest高級指南