解讀 CTS 結果

CTS 測試結果會放在下列檔案中:

CTS_ROOT/android-cts/results/start_time.zip

如果您自行建構 CTS,CTS_ROOT 會類似 out/host/linux-x86/cts,但因平台而異。這會反映您從這個網站下載的預建官方 CTS 解壓縮路徑。

在 ZIP 檔案中,test_result.xml 檔案包含實際結果。

顯示 Android 10 以上版本的結果

ZIP 封存檔中含有 test_result.html 檔案,您可以直接在任何與 HTML5 相容的網路瀏覽器中開啟該檔案

顯示 Android 10 之前的結果

在任何與 HTML5 相容的網路瀏覽器中開啟 test_result.xml 檔案,即可查看測試結果

如果使用 Chrome 瀏覽器時,這個檔案顯示空白頁面,請變更瀏覽器設定,啟用 --allow-file-access-from-files 指令列標記。

解讀測試結果

測試結果的詳細資料取決於您使用的 CTS 版本:

  • Android 6.0 以下版本的 CTS v1
  • Android 7.0 以上版本的 CTS v2

裝置資訊

在 CTS v1 和更早版本中,選取「裝置資訊」(測試摘要上方的連結),即可查看裝置、韌體 (製造商、型號、韌體版本、平台) 和裝置硬體 (螢幕解析度、鍵盤、螢幕類型) 的詳細資料。CTS v2 不會顯示裝置資訊。

測試摘要

「測試摘要」部分提供已執行的測試計畫詳細資料,例如 CTS 計畫名稱,以及執行開始和結束時間。此外,這項功能也會匯總並顯示通過、失敗、逾時或無法執行的測試數量。

Android 10 CTS 範例測試摘要

Android 10 CTS 測試摘要

圖 1:Android 10 CTS 範例測試摘要

CTS v2 測試摘要範例

CTS v2 測試摘要

圖 2:CTS v2 範例測試摘要

CTS v1 測試摘要範例

CTS v1 測試摘要

圖 3:CTS v1 範例測試摘要

測試報告

下一節的 CTS 測試報告會提供每個套件通過的測試摘要。

接著是實際執行的測試詳細資料。報告會列出測試套件、測試套件、測試案例和執行的測試。這項指令會顯示測試執行結果,包括通過、失敗、逾時或未執行。如果測試失敗,系統會提供詳細資料,協助您診斷原因。

此外,XML 檔案中會提供失敗的堆疊追蹤記錄,但報告中不會納入這項資訊,以確保簡潔明瞭。使用文字編輯器查看 XML 檔案時,應該會顯示測試失敗的詳細資料 (搜尋與失敗測試對應的 [Test] 標記,並在其中尋找 [StackTrace] 標記)。

顯示 CTS v2 範例測試報告

CTS v2 測試報告

圖 4:CTS v2 測試報表示例

顯示 CTS v1 範例測試報告

CTS v1 測試報告

圖 5:CTS v1 測試報表示例

查看 test_result.xml,找出不完整的測試模組

如要判斷特定測試階段中不完整的模組數量,請執行「list results」指令。系統會列出每個先前工作階段中完成的單元數和單元總數。如要判斷哪些模組已完成,哪些尚未完成,請開啟 test_result.xml 檔案,然後讀取結果報表中每個模組的「done」屬性值。如果模組的值為 done = "false",表示尚未執行完畢。

測試失敗的優先順序

請參考下列建議,排解測試失敗問題。

  • 如果測試因前提條件有誤而失敗,請確認您的 CTS 環境設定正確無誤。包括實體環境、桌上型電腦設定和 Android 裝置設定。
  • 如果測試過於不穩定,請檢查裝置穩定性、測試設定或環境問題。
  • 如果測試仍失敗,請單獨重試測試。
  • 檢查導致測試失敗的外部因素,例如:
    • 環境設定。舉例來說,如果所有受測裝置 (包括參考裝置) 都發生測試失敗情形,可能是因為桌機設定錯誤。
    • 外部依附元件。舉例來說,如果多個網站的所有裝置在特定時間點開始測試失敗,可能是因為網址有問題。
    • 如果 DUT 未包含安全性修補程式,安全性測試失敗是預料中的事。
  • 驗證並分析通過和未通過裝置之間的差異。
  • 分析斷言、記錄、錯誤報告和 CTS 來源。對於 HostTest,判斷和記錄可能非常一般,因此檢查並附加裝置 logcat 也很有幫助。
  • 提交測試改善修補程式,協助減少測試失敗次數。

儲存部分結果

測試呼叫失敗時,Tradefed 不會儲存部分測試結果。

如果 Tradefed 未產生任何測試結果,表示測試執行期間發生嚴重問題,因此測試結果不可信。部分結果無法提供價值,因此在調查裝置問題時,這類結果會被視為無用。