執行 Robo 測試 (Android)

Robo 測試是與 Firebase Test Lab 整合的測試工具, Robo 測試會分析應用程式的使用者介面 (UI) 結構, 自動模擬使用者活動Robo 測試 一律會以相同的順序模擬相同的使用者活動 以相同設定在特定裝置設定上測試應用程式。這個 透過可重複的測試方式,您可以使用 Robo 測試來驗證錯誤修正程式,並 進行迴歸測試

Robo 測試會擷取記錄檔、儲存一系列的註解螢幕截圖 然後使用這些螢幕截圖建立影片 執行的所有作業這些記錄檔、螢幕截圖和影片 判斷應用程式當機的根本原因這些 Robo 的測試功能 有助於找出應用程式 UI 的問題。

除了執行一般的 Robo 測試之外,您還可以自訂測試 使用 Robo 指令碼,這是 Robo 測試的其中一項功能如要瞭解詳情 請參閱「執行 Robo 指令碼」。

如果您要試用 Robo for iOS+ 測試版,請參閱執行 Robo 測試

Robo 測試檢索統計資料

為協助你解讀 Robo 測試結果,Robo 測試會記錄期間 每個測試檢索。Test Lab 會在 Robo 測試分頁頂端顯示統計資料 ,包括:

  • 動作: 檢索期間所執行的動作總數、 包括 Robo 指令碼動作、Monkey 動作和 Robo 指令。

  • 活動:檢索涵蓋的不同活動數量。

  • 畫面:檢索期間造訪的不重複畫面數量。

Test Lab 也會使用統計資料 進行測試。圖表包含畫面做為節點 做為邊緣動作只要跟著畫面的邊緣移動,您就能 是關於 Robo 測試在整個檢索期間,跨應用程式測試的機制。

Robo 測試逾時

視應用程式的 UI 複雜程度而定,Robo 測試可能會 需要五分鐘以上的時間,才能完成完整的 UI 互動。三 建議您將測試逾時設為至少 120 秒 (2 分鐘), 而 300 秒 (5 分鐘) 適用於中度複雜的應用程式。預設值 逾時為 300 秒 (5 分鐘),適用於從 Android Studio 執行的測試 Firebase 控制台和 900 秒 (15 分鐘) gcloud 指令列。

應用程式啟動逾時錯誤

如果應用程式啟動時間過長,Robo 測試可能會擲回錯誤, 能夠檢索您的應用程式。只有在啟動時間過長時才會發生這種情況 ,您必須修正應用程式,才能加快啟動速度。

使用 Robo 指令碼,進一步控管

有時候,您需要進一步控制測試。舉例來說 測試常見的使用者歷程,或是提供特定 UI 輸入內容,例如使用者名稱 密碼。Robo 指令碼可以助您一臂之力。如要進一步瞭解 Robo 指令碼,請參閱執行 Robo 指令碼Robo 指令碼參考資料 指南

Robo 測試和非 Android UI 小工具

Robo 測試使用 Android API 對 Android UI 小工具執行動作 這有助於測試自動探索 UI,但這也意味著 而必須擷取 Android UI 中畫面的 Android UI 階層 以便執行測試

如果應用程式中的畫面未使用 Android UI 小工具,Robo 測試會改回使用 用來測試該畫面的 Monkey Actions。不像理論上 Robo 測試動作,Monkey Actions 只會模擬半隨機的輕觸事件 顯示在裝置螢幕上的位置。

如要更妥善地測試沒有使用 Android UI 小工具的畫面,您可以 輕觸 Monkey Action,並透過一組指令碼輕觸和互動 到 Firebase Test Lab 遊戲迴圈測試

與 Google Play 整合

您可以在 Google Play 管理中心使用 Robo 測試 使用 Alpha 版或 Beta 版發布應用程式的 APK 檔案。Robo 測試 會在不同地理位置的一組熱門實體裝置上運作 可針對各種板型規格和硬體設定提供測試涵蓋範圍。 詳情請參閱: 透過正式發布前測試報告找出問題

測試帳戶登入和預先定義的文字輸入內容

Robo 測試支援測試帳戶登入,您也可以輸入 直接將文字轉入應用程式的欄位中用於自訂登入和其他預先定義的文字 Robo 測試可以將文字 EditText 應用程式中的欄位。您必須識別每個字串的 EditText 欄位 輸入該名稱詳情請參閱: 存取資源

登入

Robo 測試有兩種對應方法支援登入作業:

  • 自訂登入:如果提供了測試帳戶憑證,則必須告知 Robo 測試的輸入位置,並提供這些憑證。

  • 自動登入:如果您的應用程式設有採用 Google 帳戶進行驗證,但除非您 提供用於自訂登入的測試帳戶憑證。

如要提供用於自訂登入的測試帳戶憑證,請按照下列步驟操作:

  1. 在「選取維度」頁面中,選擇「其他選項」

  2. 在「測試帳戶憑證 (選用)」下方輸入使用者名稱, 密碼資源名稱,以及測試帳戶的使用者名稱和密碼。

預先定義的文字輸入內容

您可以為應用程式使用的其他文字欄位提供自訂輸入文字。 如要為其他欄位提供文字輸入功能,請執行下列步驟:

  1. 在「選取維度」頁面中,選擇「其他選項」

  2. 在「其他欄位 (選填)」下方輸入一或多個資源名稱,然後 請在相應的文字欄位中輸入字串。

預先定義的文字輸入內容 {:#predefined-text} 錯誤

Robo 測試會搜尋含有以下 Android 資源名稱的 EditText 欄位: 符合提供的規則運算式如果 Robo 找不到相符的欄位 而不會輸入文字,否則會繼續照常檢索。

您最多可以提供三個深層連結 支援的測試版本 深層連結會以 Android 的形式發送至您的應用程式 ACTION_VIEW 意圖。因此,每個連結都必須與應用程式中的意圖篩選器相符。

如果提供一或多個深層連結,應用程式會先啟動 一般 (使用 ACTION_MAIN 要求) 且在達到指定的逾時時間前完成檢索。主要檢索完成後 連結每多 30 秒。

如果 Robo 測試找不到與深層連結相符的活動,Test Lab 忽略連結。深層連結問題通常是造成差異的原因 使用者在應用程式中提供的深層連結和定義之間有何區別同時勾選兩者 所提供的網址和應用程式是否有錯字或其他不一致的問題。

應用程式授權支援

Test Lab 支援 應用程式授權 使用 Google Play 提供的多種服務為了在測試時成功檢查授權 使用 Test Lab 建立應用程式,您必須將應用程式發布至正式版群組 或是前往 Play 商店購買如要使用 Alpha 版或 Beta 版測試應用程式 Test Lab,請先移除授權檢查,再將應用程式上傳至 Test Lab。

後續步驟