自動測試人員功能為預先發布版,預先發布版不受任何服務水準協議或廢止政策的約束,且可能只提供部分支援或不提供支援。預先發布期間適用 Test Lab費率。我們致力於為自動測試人員功能提供透明的定價,並會在該功能正式推出前分享所有詳細資料。
本指南說明如何使用 Firebase 控制台的 App Distribution 自動測試功能,自動測試應用程式。自動測試工具會隨機檢索您的應用程式,並回報發現的任何問題。
如要使用 AI 輔助測試,請參閱「應用程式測試代理」。
事前準備
如果您尚未將 Firebase 新增至 Android 專案,請先新增。
如果您未使用任何其他 Firebase 產品,只需要建立專案並註冊應用程式。不過,如果您日後決定使用其他產品,請務必完成「使用 Firebase 控制台新增 Firebase」中的所有步驟。
準備將應用程式的預先發布版發送給測試人員時,請使用一般程序建構 APK。您必須使用偵錯金鑰或應用程式簽署金鑰簽署 APK。
使用 Firebase 控制台將應用程式發布到自動化測試人員
如要將應用程式發行給自動測試人員,請使用 Firebase 管理中心上傳 APK 檔案:
- 開啟 Firebase 控制台的App Distribution頁面。系統顯示提示訊息時,請選取 Firebase 專案。
- 在「發行內容」頁面中,從下拉式選單選取要發布的應用程式。
- 將應用程式的 APK 檔案拖曳至管理中心,即可上傳。
- 上傳完成後,在「新增測試人員或群組」搜尋列中選取「自動測試人員」。
- 如要自訂自動化測試,請按一下「編輯」圖示,然後在「自訂自動化測試」對話方塊中選取自訂項目。
- (選用) 在「裝置設定」對話方塊中,選取符合測試規格的 API 級別、裝置螢幕方向和語言代碼。
- (選用) 如果應用程式需要登入憑證,請按一下「登入憑證」下拉式選單,建立可在測試期間使用的自訂使用者名稱和密碼。
- 按一下「發布」。您也可以視需要為應用程式新增發行說明。
使用 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 應用程式發布給測試人員」。
自動測試檢索狀態
為協助您解讀測試結果,「自動化測試結果」分頁會顯示所有測試問題、應用程式螢幕截圖,以及各裝置的測試檢索影片。您可以在測試結果頁面查看測試狀態:
檢索狀態 | 說明 |
---|---|
待處理 | 自動測試仍在進行中,結果很快就會出爐。 |
通過 | 自動測試已成功檢索應用程式,沒有發現當機情形。 |
失敗 | 自動測試失敗,因為應用程式在測試期間異常終止。 |
無定論 | 基礎架構發生錯誤,因此自動測試失敗。 |