使用 CI/CD 和 Fastlane 將 Apple 應用程式發布給品保測試人員的最佳做法

本文件介紹使用 Firebase 應用程式發布和 確保 Apple 平台的預先發布版測試工作流程可持續運作 且可在 CI/CD 環境中重複。雖然本文件著重介紹快速通行的車道, 我們也介紹了 Firebase 控制台提供的解決方案 Firebase CLI 和公開的 Firebase App Distribution API 更有彈性我們也會說明釋出版本和測試人員的限制,方便您規劃 以獲得最佳體驗

如果您也使用 Android,請參閱 使用 CI/CD 發布 Android 應用程式給品質確保測試人員的最佳做法

事前準備

採用本文所述的最佳做法前,請務必啟用 在 Firebase 控制台中針對各個應用程式發布應用程式。如果尚未啟用 應用程式發行,您會收到 404 錯誤。

如要啟用應用程式發布功能,請按照下列步驟操作:

  1. 開啟「應用程式發布」頁面

  2. 選取您的 iOS 應用程式。

  3. 點選「Get Started」(開始使用)

運用 CI/CD 自動化發布預先發布版測試工作流程

如要自動建構應用程式並發布給測試人員 建議使用持續整合/持續推送軟體更新做法 Fastlane。另一種方法是使用 Firebase CLI:可讓您存取各種 Firebase 產品。

使用 Fastlane

使用 Fastlane 開放應用程式發布,將應用程式發布整合至 CI/CD 管道 這套來源工具,用於自動建構及發布 iOS 和 Android 應用程式。變更者: 自動開發最新版本並發布給測試人員 確保測試人員隨時都能取得最新版本的應用程式測試版本。

如要瞭解如何整合「應用程式發布」和 Quicklane,請參閱 使用 Fastlane 將 iOS 應用程式發布給測試人員。 另請參閱程式碼研究室 ,逐步引導你完成 Fastlane 整合程序。

使用 Firebase CLI

使用 App Distribution 提供的 Firebase CLI 工具發布應用程式 透過程式輔助方式 將版本提供給測試人員您可以指定測試人員和版本資訊 建構容器

指定應用程式的下列項目,即可發布最新的 iOS 版本 test.ipa Firebase 應用程式 ID,視需要新增版本資訊和含有以下內容的檔案 測試人員的電子郵件地址:

firebase appdistribution:distribute test.ipa  \
    --app 1:1234567890:ios:0a1b2c3d4e5f67890  \
    --release-notes "Bug fixes and improvements" --testers-file testers.txt

如要進一步瞭解如何使用 Firebase CLI 自動執行建構作業,請參閱 使用 Firebase CLI 將 iOS 應用程式發布給測試人員

使用服務憑證進行驗證

使用應用程式發布的 fastlane 外掛程式 或透過服務帳戶存取 Firebase CLI 應用程式預設憑證 並協助您管理 CI服務帳戶 是一種 Google 帳戶類型,代表應用程式而非使用者。 CI 系統可使用服務帳戶執行應用程式發布工作負載。 詳情請參閱使用服務帳戶進行驗證

如果您使用的是 Workload Identity 聯盟,可以產生及使用 憑證設定檔 而非服務帳戶金鑰

請注意版本限制

每個應用程式發布的版本數量上限為 1,000 個。也就是說 超過版本數量上限時,「應用程式發布」會自動刪除 超出配額的最舊版本如要瞭解如何管理版本限制,請參閱 應用程式版本的推出時間有多長?

將同一組測試人員新增至多個版本

如要為大量版本新增測試人員,請使用 應用程式發行的大量測試人員管理功能。

我們建議您使用群組將同一批測試人員加入多個版本。 群組也是存取控制清單 (ACL);從群組移除測試人員後 他們就無法存取發布至該群組的所有版本。學習 詳情請參閱「在群組中新增及移除測試人員」。

如果有大量測試人員需要管理,您可以大量新增及刪除測試人員 即可開始使用 Firebase 控制台如要自動新增及移除測試人員,請使用 Firebase CLI Fastlane, 或公開的 Firebase App Distribution API

請注意測試人員數量上限

應用程式發布功能會限制可新增至 Firebase 專案的測試人員數量 或應用程式發布群組一旦超過這些限制,您將無法 將應用程式發布給更多測試人員。如要進一步瞭解測試人員數量上限, 請參閱「為應用程式新增測試人員是否有限制?

管理並自動新增 iOS 測試人員裝置

為協助你註冊其他 iOS 測試人員裝置,「應用程式發布」功能可協助你 在 Apple Developer Portal 中管理 iOS 測試人員裝置,通知您 。詳情請參閱: 從 CSV 檔案匯入測試人員。 你也可以透過程式輔助,使用 Fastlane 匯出新裝置

瞭解如何設定自動向下拉的快道動作 將 UDID 新增至 Apple 開發人員控制台,再重新建構應用程式 請參閱這篇文章

讓潛在測試人員自行註冊測試

如要更輕鬆地將應用程式發行給更多測試人員,建議您採取下列做法: 使用邀請連結邀請連結是專屬網址,可讓測試人員前往 電子郵件地址,以便註冊測試應用程式。允許使用者新增 向應用程式測試人員清單即可輕鬆提升 內部測試基礎

邀請連結的用途包括公司 Dogfood 測試計畫、採用 大型品質確保團隊以及希望個別客戶能夠 控制測試人員存取權

建議您為群組建立邀請連結。所有簽署的測試人員 使用邀請連結進行的更新會自動加到後續版本中。

詳情請參閱「建立邀請連結」一文。 以及在群組中新增及移除測試人員

確保測試人員能測試您重視的版本

新版本上傳時,系統會透過電子郵件通知測試人員。目的地: 補充通知,可以使用下列功能 - 發布 確認你的測試人員 您重視的具體應用程式版本:

  • 釋出連結:如要分享特定內容,請使用這項功能 測試這個版本要瞭解如何使用版本連結,請參閱 透過 Firebase 控制台將 iOS 應用程式發布給測試人員。 您也可以透過 Firebase 取得這些連結 和fastlane 與建構自動化工具搭配使用的指令列工具 (CLI) 工具。

  • 應用程式內快訊:可使用這些快訊確保 測試人員正在測試您應用程式的最新版本。藉由整合 Firebase 應用程式發布 iOS SDK 可讓您直接在 應用程式發布新版本給測試人員。如要瞭解操作方式 如要新增應用程式內快訊,請參閱「通知測試人員新版本相關資訊」。

自動移除離職測試人員的存取權

開始執行 CI/CD 內部測試流程後,您必須 確保離職員工無法再存取您的 內部版本應用程式發布,可協助您管理測試人員的建構作業存取權 提供以下選項: