本頁面提供使用 CTS Verifier (CTS-V) 多裝置測試 Android 16 以上版本的操作說明。
設定主機端多裝置測試
本節說明如何設定多裝置測試。
- 請確認您的電腦符合 CTS 的作業系統需求。
- 請按照「安裝電腦軟體」中的步驟 2 和 5 操作,確保電腦上已正確安裝 ADB、AAPT2 和 Python。
準備兩部相符的受測試裝置 (DUT),每部裝置都已設定 CTS-V。
如果您要測試 NFC 以外的模組,請按照設定標準雙裝置測試的步驟操作。
- 如要進行 NFC 測試,請按照「設定 NFC 測試」中的說明操作。
如果您要測試 CDM 模組,除了標準的兩部裝置設定程序外,請按照「設定 CDM 測試」中的說明進行設定。
設定標準的兩部裝置測試
如要使用預設的兩部裝置設定:
- 將兩個相符的 Android DUT 間隔約 20 公分。
為確保環境乾淨,請將兩部裝置放入防護箱中。
(選用) 設定 OTA 嗅探器,用於 Wi-Fi 偵錯。
設定 NFC 測試
NFC 測試會使用一個 DUT 和 PN532 NFC 晶片。
如何設定 NFC 測試:
- 購買 PN532 NFC 晶片。我們建議使用 All-In-One PN532。
在測試裝置上前往「設定」應用程式。
啟用 NFC。
放置 NFC 晶片:
針對手機,請將 DUT 的 NFC 讀取器放置在圖 1 所示位置:
圖 1. NFC 晶片位置。
對於其他裝置類型,請將晶片放在裝置的 NFC 天線旁。
使用 USB 傳輸線將 PN532 NFC 晶片連接至測試工作站。
設定 CDM 測試
test_permissions_sync()
測試案例的行為會因執行測試的裝置版本類型而異。重要的是,無論是可偵錯 (userdebug 或 eng) 還是不可偵錯 (user) 版本,OEM 都必須測試這兩種版本,且兩者都通過測試。
豁免
權限同步 API 實作項目的 CDD 子句只要求該 API 能夠透過安全管道,在裝置之間順利傳輸資料。由於安全通道實作並非 CDD 相容性規定,因此您可以在非偵錯 (使用者) 版本中略過這項測試,但前提是您不想支援 CDM 權限同步功能。
測試必須在可偵錯的版本中通過,且不發生例外狀況。
在無法偵錯的版本上測試的先決條件
如果您不符合上述豁免條款,請確認是否符合下列先決條件。
安全通道會使用 AVF (AttestationVerificationFramework
) 驗證硬體的可信度。雙方產生的認證會包含幾項相關資訊,以確保系統中沒有任何未經授權的變更。AVF 會在驗證程序期間檢查下列狀態:
- 裝置可連上網際網路
- 裝置使用經過驗證的啟動功能,且版本必須使用發布金鑰簽署,而非開發人員金鑰
- 裝置的系統啟動載入程式已鎖定。如需詳細操作說明,請參閱鎖定系統啟動載入程式
- 作業系統、主要啟動和主要供應商修補程式等級在 12 個月內。請勿使用超過一年的版本
裝置認證由供應商核准的根憑證之一提供支援。在
vendor_required_attestation_certificates.xml
資源重疊圖中指定信任的根憑證。
執行主機端多裝置測試 (AOSP 16 以上版本)
CTS Verifier 16 推出主機端多裝置測試支援功能。這些測試可在主機上使用自動化指令碼執行,而非在裝置上執行手動測試作業。每項測試完成後,結果會自動上傳至 DUT,並顯示在 CTS Verifier 應用程式中。
本節將說明如何執行主機端多裝置測試。
執行多裝置測試
如要執行多裝置測試,請按照下列步驟操作:
在測試工作站上,從解壓縮 CTS-V 壓縮套件的目錄中啟動
cts-v-host
主控台:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
在 DUT 的 CTS Verifier 應用程式中,按一下「Host-side Tests」。圖 2 顯示 CTS Verifier 應用程式中的主機端測試:
圖 2. CTS Verifier 應用程式中的主機端多裝置測試。
畫面會顯示測試主機端多裝置測試模組的清單。
找出要執行的測試模組名稱。舉例來說,CompanionDeviceManager 模組會列為 CtsCompanionDeviceManagerMultiDeviceTestCases。
在 cts-v-host 主控台中,執行下列指令: 注意:如果您在 CTS Verifier 應用程式中輕觸主機端模組,就不會看到個別測試案例的清單。相反地,在主機上執行模組後,UI 會自動填入測試案例結果。
在 xTS 主控台中執行下列指令:
run cts-v-host -m test_module_name
例如:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
xTS 主控台執行完測試後,結果會顯示在 CTS Verifier 應用程式中。標示為綠色的測試已通過。標示為紅色的測試失敗。圖 3 顯示 CtsCompanionDeviceManager 測試的範例結果:
圖 3. 主機端多裝置測試結果,顯示在 CTS Verifier 應用程式中。
排解多裝置測試問題
本節提供疑難排解協助,協助您解決可能的問題。
修正 NFC 測試期間 GetFirmwareVersion 無回應的問題
如果您在執行多裝置測試時收到 verify_firmware_version RuntimeError: No response
for GetFirmwareVersion
訊息,表示測試無法存取 PN532 NFC 板。
如要修正這個問題,請找出主機上 PN532 NFC 板使用的序列路徑 (例如 dev/ttyUSB1
),然後在控制台中使用 --module-arg
引數手動指定該路徑:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
修正 NFC 測試期間顯示的「交易失敗」錯誤訊息
如果所有 NFC 測試案例都顯示訊息 Transaction failed, check device logs for more
information.
,可能是因為 DUT 的 NFC 晶片無法偵測 PN532。
如果有許多裝置連線至主機,但其中有些裝置沒有放置 PN532,則可能是選錯了 DUT。詳情請參閱「設定 NFC 測試」。
如要修正這個問題,請採取下列任一做法:
使用
-s
標記,在主機端測試指令中設定正確的 DUT 序號。將所有非測試裝置從主機中斷連線。