分析 Firebase Test Lab 結果

您可以使用多種方式,透過 Firebase Test Lab 對 Android 應用程式執行測試,包括指令列介面Android StudioFirebase 控制台中的 Test Lab UITesting API。無論您選擇以何種方式啟動測試,結果都會儲存在您指定的 Firebase 專案中。除了上述工具外,您也可以使用 ToolResults API 探索結果。本頁說明如何查看及分析這些測試結果。

基本概念

如要查看先前所有測試執行的結果,請在 Firebase 控制台的專案左側導覽面板中選取 Test Lab。這個頁面會顯示您使用 Test Lab 透過專案測試應用程式時的所有測試執行作業。

如要查看測試結果,請先瞭解以下三個概念:

針對所選裝置和設定執行測試或一組測試案例時,Test Lab 會對應用程式執行批次測試,然後以測試矩陣的形式顯示結果。

裝置 × 測試執行次數 = 測試矩陣

裝置
您用來執行測試的實體或虛擬裝置 (僅限 Android),例如手機、平板電腦或穿戴式裝置。測試矩陣中的裝置會依據裝置型號、作業系統版本、螢幕方向和語言代碼 (也稱為地理位置和語言設定) 識別。
測試、測試執行
要在裝置上執行的測試 (或一組測試案例)。您可以在每個裝置上執行一項測試,也可以選擇將測試分片,並在不同裝置上執行測試案例。
測試矩陣
包含測試執行作業的狀態和測試結果。如果矩陣中的任何測試執行作業失敗,整個矩陣就會失敗。

以下各節說明如何瀏覽測試結果。

解讀測試記錄結果

選取 Test Lab 即可查看測試結果,瞭解目前執行的測試結果。

測試記錄會依應用程式分組。每個應用程式只會顯示最近五個測試矩陣,如要查看更多,請按一下應用程式測試清單底部的「所有矩陣」連結,即可查看該應用程式的完整清單。

解讀測試矩陣結果

透過 Test Lab UI 啟動測試時,系統會將您重新導向至一個頁面,您可以在該頁面查看測試矩陣,並點選特定測試執行作業來查看測試結果。Android Studiogcloud 指令也會提供測試矩陣結果頁面的網址。

在典型的測試矩陣中,您可能會在十幾個不同的裝置上執行測試。每次執行測試的結果可能都不相同。測試矩陣中任何測試執行的可能結果包括:

  • 通過 已通過測試:未發生任何錯誤。
  • 失敗 測試失敗:發生至少一項失敗。
  • 無法確定 已通過測試:測試結果無法確定,可能是因為發生 Test Lab 錯誤。
  • 已略過 已通過測試:矩陣中部分測試執行的所選維度值不相容。如果所選裝置與一或多個 Android API 級別不相容,就會發生這種情況。

如要查看 Firebase 專案中特定應用程式的所有測試矩陣匯總測試結果,請按一下應用程式名稱,如下列範例所示:

測試矩陣結果頁面範例,只有四項測試執行作業 測試矩陣結果

系統會將您帶往應用程式的測試矩陣清單,您可以在這裡點按任一測試矩陣的名稱,查看測試矩陣結果,也可以點按應用程式名稱 (如下方紅框所示),查看與 Firebase 專案相關聯的其他應用程式測試矩陣清單。

測試矩陣清單頁面範例 測試矩陣清單

測試矩陣的結果可能為通過、失敗或無法確定。如果測試矩陣中的任何測試執行失敗或不確定,該矩陣就會顯示為失敗或不確定。

解讀 Robo 測試結果

如果您使用 Robo 執行測試,除了常見的測試指標外,結果還會包含 Robo 檢索使用者介面的影片和螢幕截圖。這些影片和螢幕截圖會顯示 Robo 在檢索期間執行的動作,類似於 Android 的「顯示觸控」功能。您可以根據這些指標追蹤 Robo 的進度,並重現 Robo 發現的任何錯誤。

Robo 測試結果影片範例

Robo 測試結果

解讀單一測試執行的結果

在測試矩陣結果頁面中,按一下其中一項測試執行作業,即可查看該測試執行作業的結果。

測試執行結果頁面範例 測試執行結果

這個頁面會顯示每次執行測試所需的時間。您也可以查看與測試 APK (適用於檢測設備測試) 中的方法對應的特定測試案例結果,以及詳細的測試結果,包括測試記錄、螢幕截圖和影片。如果是 Robo 測試,詳細測試結果還會包含活動地圖,以圖形方式顯示 Robo 測試造訪的使用者介面路徑。

分割檢測設備測試結果

為協助您解讀插碼測試結果,Test Lab 會將每項測試分別列在詳細報告頁面中,並附上堆疊追蹤、記錄和影片。無論是否使用 Android Orchestrator,這項功能都能運作。

測試案例結果頁面範例 測試案例結果

解讀無障礙結果

Robo 測試會使用 Android 無障礙功能檢查工具,偵測應用程式中的無障礙功能問題 (請注意,您也可以在裝置上執行本機掃描)。如需如何查看及解讀 Robo 測試的無障礙結果,請參閱「無障礙功能檢查工具入門指南」。

如需改善應用程式無障礙功能的一般資訊,請參閱 Android 開發人員無障礙功能說明文件

效能指標

在實體裝置上執行的測試也會傳回效能指標:

指標必要裝置設定
應用程式啟動時間API 19 以上版本
CPU 使用率API 21 以上版本
記憶體用量
網路活動
每秒畫格數API 21 以上版本,且包含 SurfaceView

詳細測試結果

測試執行完畢後,詳細測試結果會保留 90 天,並儲存在 Google Cloud Storage bucket 中 (但也會顯示在控制台中Firebase)。在測試執行結果頁面中,按一下「測試結果」,即可在 Cloud Storage bucket 中查看詳細的測試結果。即使無法再查看詳細測試結果,您還是可以瞭解哪些測試通過或失敗。

如要將詳細測試結果保留超過 90 天,可以使用 --results-bucket gcloud 指令列選項,將測試結果傳送至您擁有的 Cloud Storage 值區。接著,您可以設定「年齡」,決定結果在 Cloud Storage 值區中儲存的時間長度。如要瞭解如何變更「年齡」設定,請參閱生命週期條件

執行測試時,如果收到 does not have storage.objects.create access to the Google Cloud Storage object. Permission 'storage.objects.create' denied on resource (or it may not exist).. 錯誤,表示執行測試的主體可能沒有專案的正確權限。根據預設,Firebase 會在 Google Cloud Storage 中為您建立值區,但執行測試的主體必須具備「roles/editor」(寬鬆角色) 權限。如果無法將該角色授予主體,可以使用 --results-bucket gcloud 指令列選項