Catch up on everthing we announced at this year's Firebase Summit. Learn more

開始使用 CI 系統進行測試

在使用任何持續集成 (CI) 系統開發應用程序時,您可以使用 Firebase 測試實驗室。持續集成系統可讓您在每次簽入應用源代碼更新時自動構建和測試應用。

將 Firebase 測試實驗室與 Jenkins CI 結合使用

本節將介紹如何使用測試實驗室與詹金斯CI

要求

在將 Firebase 測試實驗室與 Jenkins 一起使用之前,您需要完成以下步驟:

  1. 設置 gcloud。按照從指令從gcloud指令行中使用火力地堡測試實驗室創建一個火力地堡項目,並配置本地谷歌雲SDK環境。

  2. 創建並授權服務帳號。服務帳戶不受垃圾郵件檢查或驗證碼提示的影響,否則可能會阻止您的 CI 構建。創建在一個Editor角色的服務帳戶谷歌雲端控制台,然後激活它(見gcloud AUTH激活服務賬戶資料,以了解如何操作)。

  3. 啟用所需的 API。登錄,使用服務帳戶後:在谷歌開發者控制台API庫頁面,啟用谷歌雲測試API雲工具的結果API。為了實現這些API,在控制台頂部鍵入這些API名稱在搜索框中,然後單擊該API概述頁面上啟用API。

安裝和設置 Jenkins

您可以在 Linux 或 Windows 上安裝和設置 Jenkins CI。本指南中的某些細節是特定於安裝和運行在Linux上詹金斯CI,包括(使用斜線/ )的文件路徑。

要下載並運行Linux或Windows的計算機上安裝詹金斯,請按照指示安裝詹金斯。詹金斯安裝後,請按照指示啟動並訪問詹金斯完成安裝,即可訪問詹金斯儀表盤。

配置全局安全設置

Jenkins 在首次安裝時沒有配置用戶身份驗證和訪問控制。在將 Jenkins 與 Firebase 測試實驗室結合使用之前,請配置全局安全設置以實施訪問控制和驗證用戶身份。

配置全局安全設置

  1. 導航到服務器上的 Jenkins 儀表板。要做到這一點,瀏覽到http:// <服務器>:8080,其中<服務器>是您已經安裝詹金斯計算機的名稱。
  2. 在儀表盤詹金斯,單擊管理詹金斯,然後單擊配置全局安全性
  3. 配置全球安全頁面,點擊啟用安全性,然後單擊保存

有關詹金斯配置安全設置的詳細信息,請參閱快速和簡單安全標準的安全設置,並確保詹金斯

創建一個詹金斯項目

接下來,創建一個項目,用於使用 Firebase 測試實驗室對您的應用進行持續集成測試。

創建 Jenkins 項目

  1. 導航到服務器上的 Jenkins 儀表板。要做到這一點,瀏覽到http:// <服務器>:8080,其中<服務器>是您已經安裝詹金斯計算機的名稱。
  2. 在儀表盤詹金斯,單擊新建項目
  3. 項目名稱字段中鍵入項目名稱:
    • 選擇自由泳項目創建一個使用一個單一的構建配置的項目。
    • 選擇生成多配置的項目,以創建一個項目,在多個不同的構建配置運行。如果您計劃使用多種構建配置(多個區域設置、多個 Android API 級別等)構建您的應用,那麼多配置項目是最佳選擇。
  4. 單擊保存

創建項目後,Web 瀏覽器會顯示項目的主頁。

添加修訂控制和 Gradle 構建步驟

本節介紹如何將 Jenkins 與 GitHub 等版本控制系統集成,以及如何添加 Gradle 構建步驟以從源代碼構建 APK 包。

與 GitHub 和其他版本控制系統集成

如果您使用 GitHub 或其他版本控制系統來管理您的應用程序的源代碼,您可以將 Jenkins 配置為運行自動構建並在每次簽入應用程序更新時運行測試。您還可以將 Jenkins 配置為定期運行構建。

要了解配置建立在詹金斯,請參閱配置自動構建

添加 Gradle 構建步驟以重建 APK 包

如果您使用版本控制系統來管理應用程序的源代碼,則每次 Jenkins 從您的版本控制系統下載源代碼時,您都需要包含一個 Gradle 構建步驟來創建新的 APK 二進製文件。

  1. 添加構建步驟來為您的應用程序的主目錄中運行以下命令:

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

  2. 添加構建步驟以在使用測試實驗室進行測試時使用 Gradle 創建的 APK 包。您可以使用此路徑為<local_server_path>在shell腳本示例下面提供,其中<AppFolder>是您的應用程序在Android Studio項目文件夾:

    <AppFolder>/app/build/outputs/apk
    

將測試實驗室構建步驟添加到 Jenkins

現在您已準備好向 Jenkins 添加構建步驟,以使用 gcloud 命令行運行測試實驗室。

添加 gcloud 構建步驟

  1. 從項目的主網頁,單擊配置
  2. 項目設置頁面,向下滾動到Build部分,然後選擇從添加構建步驟菜單執行shell。

  3. 詹金斯執行外殼命令窗口,輸入以下,代<local_server_path>的路徑到樣品應用在服務器上,<app_apk>對於應用的APK,和<app_test_apk>對於應用的測試APK:

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

分析測試結果

測試實驗室完成您的應用程序的測試後,可以查看在火力地堡控制台或在測試結果谷歌雲存儲項目中的水桶。您還可以添加gsutil上面的測試結果數據複製到本地計算機顯示的shell命令命令。要了解更多信息,請參閱分析火力地堡測試實驗室結果

與其他 CI 系統的持續集成

要了解如何將 Firebase 測試實驗室與其他 CI 系統一起使用,請查看他們的文檔: