自動化測試人員 (Android)

自動化測試工具功能為預先發布版。預先發布版不受任何服務水準協議或廢止政策規範,可能僅提供有限支援或不提供支援。預先發布版期間,適用 Test Lab 費率。我們致力於提供透明的自動測試工具功能定價,並會在正式發布前分享所有詳細資料。

本指南說明如何使用 App Distribution 控制台中的 Firebase 自動測試工具功能,自動測試應用程式。自動測試工具會隨機檢索應用程式,並回報發現的問題。

如要使用 AI 輔助測試,請改為參閱應用程式測試代理。

事前準備

如果您尚未將 Firebase 新增至 Android 專案,請先新增。

如果您不使用其他 Firebase 產品,只需建立專案並註冊應用程式。不過,如果您日後決定使用其他產品,請務必完成「使用 Firebase 控制台新增 Firebase」中的所有步驟。

當您準備好將預先發布版應用程式發布給測試人員時,請按照一般程序建構 APK。您必須使用偵錯金鑰或應用程式簽署金鑰簽署 APK。

使用 Firebase 控制台將應用程式發布給自動化測試人員

自動化測試工具功能現已內建於應用程式測試代理。如要使用這項功能,請在 Firebase 控制台中執行測試,並選擇「隨機檢索」。

使用 Firebase CLI 將應用程式發布給自動化測試人員

執行 appdistribution:distribute 指令,上傳應用程式並發布給測試人員。請使用下列參數,設定自動化測試人員功能的發布作業:

appdistribution:distribute 選項
--test-devices 或 --test-devices-file

要將版本發布至自動化測試人員功能的測試裝置。

您可以使用分號分隔清單,指定測試裝置:

--test-devices: "model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"

或者,您也可以指定純文字檔案的路徑,其中包含以分號分隔的測試裝置清單:

--test-devices-file: "/path/to/test-devices.txt"
--test-username

自動化測試期間,用於自動登入的使用者名稱。

--test-password 或 --test-password-file

自動化測試期間自動登入所用的密碼。

或者,您也可以指定含有密碼的純文字檔案路徑:

--test-password-file: "/path/to/test-password.txt"
--test-username-resource

自動化測試期間,用於自動登入的使用者名稱欄位資源名稱。

--test-password-resource

自動化測試期間,用於自動登入的密碼欄位資源名稱。

--test-non-blocking

以非同步方式執行自動化測試。請前往 Firebase 控制台查看自動測試結果。

如要進一步瞭解如何開始使用 Firebase CLI,以及設定發布作業的不同方式,請參閱「使用 Firebase CLI 將 Android 應用程式發布給測試人員」。

使用 Gradle 將應用程式發布給自動化測試人員

如要設定 App Distribution,請至少新增一個 firebaseAppDistribution 區段,並使用下列參數設定自動化測試工具功能的發布作業:

App Distribution 建構參數
testDevices 或 testDevicesFile

您要使用自動化測試發布測試版本的測試裝置。

您可以指定測試裝置,方法是以分號分隔裝置規格清單

testDevices="model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"

或者,您也可以指定檔案路徑,其中包含以分號分隔的裝置規格清單:

testDevicesFile="/path/to/testDevices.txt"
testUsername

自動化測試期間,用於自動登入的使用者名稱。

testUsernameResource

自動化測試期間,用於自動登入的使用者名稱欄位資源名稱。

testPassword 或 testPasswordFile

自動化測試期間自動登入所用的密碼。

或者,您也可以指定含有密碼的純文字檔案路徑:

testPasswordFile="/path/to/testPassword.txt"
testPasswordResource

自動化測試期間,用於自動登入的密碼欄位資源名稱。

testNonBlocking

以非同步方式執行自動化測試。前往 Firebase 控制台查看自動測試結果。

如要進一步瞭解如何開始使用 Gradle,以及設定發行版本的不同方式,請參閱「使用 Gradle 將 Android 應用程式發行給測試人員」。

使用 fastlane 將應用程式發布給自動化測試人員

在 ./fastlane/Fastfile 泳道中,新增 firebase_app_distribution 區塊。請使用下列參數,設定自動化測試人員功能的發布作業:

firebase_app_distribution 參數
test_devices 或 test_devices_file

要將版本發布至自動化測試人員功能的測試裝置。您可以使用分號分隔清單,指定測試裝置:

test_devices: "model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"

或者,您也可以指定純文字檔案的路徑,其中包含以分號分隔的測試裝置清單:

test_devices_file: "/path/to/test-devices.txt"
test_username

自動化測試期間,用於自動登入的使用者名稱。

test_password 或 test_password_file

自動化測試期間自動登入所用的密碼。

或者,您也可以指定含有密碼的純文字檔案路徑:

test_password_file: "/path/to/test-password.txt"
test_username_resource

自動化測試期間,自動登入的使用者名稱欄位資源名稱。

test_password_resource

自動化測試期間,用於自動登入的密碼欄位資源名稱。

test_non_blocking

以非同步方式執行自動化測試。前往 Firebase 控制台查看自動測試結果。

如要進一步瞭解如何開始使用 fastlane,以及設定發布作業的不同方式,請參閱「使用 fastlane 將 Android 應用程式發布給測試人員」。

自動測試檢索狀態

為協助您解讀測試結果,「自動化測試結果」分頁會顯示所有測試問題、應用程式螢幕截圖,以及每部裝置的測試檢索影片。您可以在測試結果頁面查看測試狀態:

檢索狀態 說明
待處理 自動測試仍在執行中,結果很快就會出爐。
順利完成 自動測試已成功檢索應用程式,沒有發現當機情形。
失敗 應用程式在測試期間異常終止,因此自動測試失敗。
無定論 基礎架構發生錯誤,因此自動測試失敗。