本指南說明如何使用 Firebase 控制台中的「應用程式發布自動化測試人員」功能,自動將版本發布給測試人員。自動化測試人員功能為應用程式提供隨時易於使用的煙霧測試工具。
事前準備
如果您尚未將 Firebase 新增至 Android 專案,請先完成這項作業。
如果沒有使用其他 Firebase 產品,就只須建立專案並註冊應用程式。不過,如果您決定日後要使用其他產品,請務必完成使用 Firebase 主控台新增 Firebase 中的所有步驟。
當您準備好將應用程式的預先發布版發送給測試人員時,請使用一般程序建構 APK。您必須使用偵錯金鑰或應用程式簽署金鑰簽署 APK。
使用 Firebase 控制台將應用程式發布至自動化測試人員
如要將應用程式發行至自動化測試人員,請透過 Firebase 控制台上傳 APK 檔案:
- 開啟 Firebase 控制台的「應用程式發布」頁面。畫面上出現提示時,請選取 Firebase 專案。
- 在「版本」頁面的下拉式選單中選取您要發布的應用程式。
- 請將應用程式的 APK 檔案拖曳至主控台即可上傳。
- 上傳完成後,在「新增測試人員或群組」搜尋列中選取「自動化測試人員」。
- 如要自訂自動化測試,請按一下「Edit」圖示,然後在「Customize your automated test」對話方塊中選取自訂測試。
- (選用) 在「裝置設定」對話方塊中,選取符合測試規格的 API 級別、裝置螢幕方向和語言代碼。
- (選用) 按一下「Login credentials」(登入憑證) 下拉式選單,建立可在測試期間使用的使用者名稱和密碼。
- 按一下「發布」。您也可以視需要為應用程式新增版本資訊。
使用 Firebase CLI 將應用程式發布至自動化測試人員
執行 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 將應用程式發布至自動化測試人員
如要設定應用程式發布,您可以新增至少一個 firebaseAppDistribution
區段,並使用下列參數設定對自動化測試人員功能的發布:
應用程式發布建構參數 | |
---|---|
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 將 Android 應用程式發布給測試人員」一文。
自動測試檢索狀態
為了協助您解讀測試結果,「自動測試結果」分頁會顯示所有測試問題、應用程式的螢幕截圖,以及每部裝置的測試檢索影片。測試結果頁面會顯示測試狀態:
檢索狀態 | 說明 |
---|---|
待處理 | 自動測試仍在執行中,結果很快就會出爐。 |
已通過 | 自動測試已成功檢索應用程式,未發現任何當機情形。 |
失敗 | 應用程式在測試期間異常終止,因此自動測試失敗。 |
尚無確定結果 | 基礎架構發生錯誤,因此自動測試失敗。 |