執行 CTS 測試

貿易聯盟是一個在 Android 上執行測試的持續測試架構 裝置。如要執行 Compatibility Test Suite (CTS),請先參閱 貿易聯盟總覽: 進行交易測試架構的解釋

如何執行測試計畫:

  1. 設定處於測試狀態的裝置 (DUT),如下所示: Android 裝置設定
  2. 確認您已安裝 Android Debug Bridge (ADB)Android 資產封裝工具 (AAPT) 並且將這些工具的位置新增至機器的系統路徑。 如要進一步瞭解如何安裝這些工具,請參閱 設定 CTS:ADB 和 AAPT
  3. 已發布的 CTS 版本下載至 Linux 主體機器,並將版本解壓縮至主機位置。
  4. 請至少連接一部裝置。準備 DUT:
    • 按下主畫面按鈕,將裝置設為主畫面。
    • 請不要將 DUT 用於任何其他工作。
    • 將 DUT 固定在靜止位置,以免觸發感應器 活動。
    • 將裝置相機鏡頭對準可聚焦的物件。
    • 請勿在 CTS 執行期間按下裝置上的任何鍵。按下 按鍵或觸碰 DUT 螢幕,幹擾執行中的測試 可能會導致測試失敗
  5. 從 CTS 的資料夾啟動 CTS 控制台 cts-tradefed 指令碼 已解壓縮。在主機的指令列殼層中,執行下列指令:

    ./android-cts/tools/cts-tradefed
  6. 執行預設測試計畫 (包含所有測試套件):

    cts-tradefed > run cts
    • 如要縮短測試執行時間,可以 將測試分割 跨裝置使用檔案資料分割至少需要主機連線 兩部裝置,不過為了提升效率,建議使用六台以上的裝置。 資料分割超過 1 部裝置時:

      • 如果是 Android 9 以上版本,請使用指令選項

        --shard-count number_of_shards
      • 如果是 Android 8.1 以下版本,請使用指令選項

        --shards number_of_shards
    • 如果您不想執行整個測試套件,可以執行 您選擇的 CTS 方案 指令列:

      run cts --plan test_plan_name

      如何找出測試計畫名稱:

      • 如果是 Android 7.0 以上版本,如要查看測試模組清單,請輸入

        list modules
      • 如果使用 Android 6.0 以下版本,如要查看測試計畫清單,請前往 存放區,請輸入

        list plans
      • 如果是 Android 6.0 以下版本,如要查看測試套件清單, 存放區,請輸入

        list packages
    • 如需視 CTS 版本而定的其他指令選項,請參閱 控制台指令參考資料, 或「全部說明」部分就能進入交易中心。

  7. 執行多個重試工作階段,直到所有測試模組均完成且 過去兩個重試工作階段中,測試失敗次數相同。

    • 如果是 Android 9 以上版本,請使用

      run retry --retry session_number --shard-count number_of_shards
    • 如果是 Android 7.0 - 8.1,請使用

      run cts --retry session_number --shards number_of_shards
    • 如需不同 CTS 版本的其他重試指令選項,請參閱 CTS v2 指令主控台

    • 如要瞭解 CTS 重試的實作詳細資料,請參閱 重試聯盟套件重試

  8. 只在失敗的參數化測試執行重試工作階段。通過 系統不會重試參數化測試。

    • 如果是 Android 11 以上版本,系統會啟用下列重試指令選項 安裝在 run cts 指令中:

      run retry --retry  --new-parameterized-handling
  9. 透過控制台查看測試進度和結果。

使用 Android Test Station 執行 CTS

Android Test Station 是 Android 開發人員的測試自動化工具 工程師可利用使用者介面執行標準測試 例如 1、21、11、414 以及可與 Android Compatibility Test Suite (CTS)

這項工具會經由 ATS 使用手冊、 而且相關程式碼的開放原始碼 (multitest_transporttradefed_cluster)。

針對替代模式執行 CTS

CTS 10 R4 版本針對提供替代模式的裝置新增測試計畫, 提供多個螢幕的裝置使用下列指令執行替代模式測試計畫 run cts-foldable

通過或失敗的替代螢幕模式測試案例會附加 值display_mode,例如 testcase1[display_mode=0]

在 CTS 13 中,DeviceStateManager API 允許含有下列屬性的測試模組 針對摺疊式裝置的不同狀態執行設定選項。 根據螢幕折疊狀態,CTS 會自動執行測試執行作業 您無需執行 cts-foldable 測試計畫。

<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />

CTS 中的多裝置測試

Android 13 以上版本支援多裝置測試。 要求多部裝置在 CTS 執行期間自動執行的測試。 CTS 13 包含部分在資料分割時自動觸發的多裝置測試 雖然測試時不必對實體設定進行額外變更, 必須安裝virtualenv」 才能正確執行測試詳情 請參閱「多裝置 套件

執行多裝置測試

如要獨立執行多裝置測試,請使用下列程式碼:

  cts-tradefed > run cts-multidevice
  

支援所有一般選項。如要指定特定裝置,請加入 裝置的數量為 --serial <serial1> --serial <serial2>,以此類推 鎖定目標。

如要自動觸發多裝置測試,請使用資料分割 (如 --shard-count 2 中所示)。