開始使用持續整合 (CI) 系統進行測試

開發應用程式時,您可以使用 Firebase Test Lab 整合 CI 系統持續整合系統可讓您自動 每當您更新應用程式原始碼更新時,就會建構並測試應用程式。

搭配使用 Firebase Test Lab 和 Jenkins CI

本節說明如何將 Test Lab 與 Jenkins CI

需求條件

將 Firebase Test Lab 與 Jenkins 搭配使用前,您必須完成 步驟如下:

  1. 設定 gcloud。請遵循指示: 透過 gcloud 指令列使用 Firebase Test Lab 建立 Firebase 專案並設定本機 Google Cloud SDK 環境。

  2. 建立並授權服務帳戶。服務帳戶不適用 垃圾郵件檢查或人機驗證提示,否則可能會阻擋您的持續整合 建構應用程式建立具備編輯者角色的服務帳戶: Google Cloud 控制台 然後啟用 (請參閱 gcloud auth activate-service-account 說明文件)。 )。

  3. 啟用必要的 API。使用服務帳戶登入後: Google Developers Console API 程式庫頁面 啟用 Google Cloud Testing APICloud Tool Results API。目的地: 啟用這些 API,請在頁面頂端的搜尋框中輸入這些 API 名稱 ,然後在該 API 的總覽頁面中按一下「啟用 API」

安裝並設定 Jenkins

您可以在 Linux 或 Windows 上安裝並設定 Jenkins CI。如要進一步瞭解 本指南專門說明如何在 Linux 上安裝及執行 Jenkins CI,包括 在檔案路徑中使用斜線 (/)。

如要在執行 Linux 或 Windows 的電腦上下載及安裝 Jenkins,請按照下列步驟操作: 請參閱「安裝 Jenkins。更新後 安裝 Jenkins, 啟動及存取 Jenkins 完成設定並存取 Jenkins 資訊主頁。

調整全域安全性設定

Jenkins 並未設定使用者驗證和存取權控管 安裝。將 Jenkins 與 Firebase Test Lab 搭配使用前,請先設定 全域安全性設定以強制執行存取權控管及驗證 使用者。

調整全域安全性設定

  1. 前往伺服器上的 Jenkins 資訊主頁。方法是前往 http://<servername>:8080,其中 <servername> 為名稱 安裝 Jenkins。
  2. 在 Jenkins 資訊主頁中,按一下 [Manage Jenkins],然後按一下 設定全域安全性
  3. 在「Configure Global Security」頁面中點選「Enable security」,然後 然後按一下「儲存」

如要進一步瞭解如何調整 Jenkins 的安全性設定,請參閱 快速簡單的安全防護Standard Security Setup (標準安全性設定), 和 保護 Jenkins

建立 Jenkins 專案

接著,建立用於執行應用程式的持續整合測試專案 與 Firebase Test Lab 整合

建立 Jenkins 專案

  1. 前往伺服器上的 Jenkins 資訊主頁。方法是前往 http://<servername>:8080,其中 <servername> 為名稱 安裝 Jenkins。
  2. 在 Jenkins 資訊主頁中,按一下「New Item」
  3. 在「Item name」欄位中輸入專案名稱:
    • 選擇「Freestyle project」,即可建立使用單一版本的專案 此外還會從 0 自動調整資源配置 您完全不必調整資源調度設定
    • 選擇「Build multi- configuration project」,建立 可在多種不同建構設定上執行如果打算 提供多種建構設定 (多種語言代碼、 多個 Android API 級別等),則多重設定專案會 最佳選擇
  4. 按一下 [儲存]

建立專案後,網路瀏覽器會顯示 專案。

新增修訂版本控制項和 Gradle 建構步驟

本節說明如何整合 Jenkins 與修訂版本控制系統 以及如何新增 Gradle 建構步驟以建構 APK 套件 擷取出原始碼

與 GitHub 和其他修訂版本控制系統整合

如果您使用 GitHub 或其他修訂版本管控系統管理原始碼 您可以為應用程式設定 Jenkins 來執行自動化建構作業及執行測試 。您也可以設定 使用 Jenkins 定期執行建構作業。

如要瞭解如何在 Jenkins 中設定建構作業,請參閱 設定自動建構

新增 Gradle 建構步驟以重新建構 APK 套件

如果您使用修訂版本控管系統來管理應用程式原始碼 您需包括 Gradle 建構步驟,才能在每次 Jenkins 時建立新的 APK 二進位檔 下載修訂版本管控系統中的原始碼

  1. 請新增建構步驟,在主目錄中執行下列指令: 應用程式:

    ./gradlew :app:assembleDebug
    ./gradlew :app:assembleDebugAndroidTest
    

  2. 新增建構步驟,以便在測試時使用 Gradle 建立的 APK 套件 與 Test Lab 整合這個路徑可做為 以下殼層指令碼範例中的 <local_server_path>, 其中 <AppFolder> 是訂閱項目的 Android Studio 專案資料夾, 應用程式:

    <AppFolder>/app/build/outputs/apk
    

將 Test Lab 建構步驟新增至 Jenkins

現在,您已準備好在 Jenkins 中新增建構步驟,以使用 gcloud 指令列

新增 gcloud 建構步驟

  1. 在專案的主頁面中,按一下 [設定]
  2. 在「專案設定」頁面中,向下捲動至「建構」部分。 然後,從「Add build step」選單中選擇「Execute shell」

  3. 在「Jenkins Execute shell command」視窗中,輸入下列內容: 將 <local_server_path> 換成 為應用程式的 APK 輸入 <app_apk>,以及 做為應用程式測試 APK 的 <app_test_apk>

    gcloud firebase test android run --app <local_server_path>/<app_apk>.apk
    --test <local_server_path>/<app_test_apk>.apk
    

分析測試結果

Test Lab 完成應用程式測試後,即可檢查測試 也可以在 Firebase 控制台或 Google Cloud Storage 值區 。並新增 gsutil 指令對 殼層指令,將測試結果資料複製到本機電腦。 詳情請參閱: 分析 Firebase Test Lab 結果

與其他持續整合系統的持續整合

如要瞭解如何搭配使用 Firebase Test Lab 與其他 CI 系統,請前往 相關文件: