環境總覽

對於正式版應用程式,您需要設定明確的開發工作流程,尤其是在有多人開發應用程式的情況下。開發工作流程通常涉及設定及管理多個環境。

Firebase 對開發人員工作流程和組成環境提供不同程度的支援。熟悉本頁的開發人員工作流程術語和假設後,請參閱一般最佳做法和一般安全性指南,瞭解如何設定 Firebase 專案和應用程式。

關於環境

在軟體開發中,環境是指執行應用程式執行個體或應用程式系統所需的所有硬體和軟體。

一系列環境可提供隔離功能,用於開發及測試軟體,而不會影響使用者。如下圖所示,高階環境可分為「試產」或「正式環境」,您可以視需要建立多個試產環境。圖表也說明與每種環境類型相關聯的常見做法和功能。

將功能或版本透過這些環境推進到正式環境的程序,稱為部署管道。

這張圖表顯示通常構成部署管道的環境,包括開發、測試和品質確保、測試,最後是正式環境

環境類型

環境是由基礎架構組成,用於執行及支援應用程式、程式碼和資料。展開下列各項,查看一些常見環境的說明,包括各環境類型所用資料類型的提示。

開發 (dev) 環境

每位開發人員都需要開發環境,也就是安全、隔離的空間,以便在建構變更時進行測試。理想情況下,團隊中的每位開發人員都應能存取自己的開發環境。此外,如果開發環境是本機執行個體,開發人員就能更快疊代。

開發環境中的資料會植入通常與正式環境資料類似的資料,但絕不應包含任何實際使用者的資料。也可能包含過去曾導致錯誤的資料,例如超長字串。

測試和品質確保環境

如果您有自動化測試,則需要一個執行這些測試的環境,而且每次建立測試環境時,都需要重設資料。

如果您有品質確保工程師,他們可能需要一個共用環境,或需要個別環境來測試新的候選版。

測試和品質確保環境中的資料會植入品質資料,這些資料通常代表正式環境資料,以及代表極端案例的資料,以及過去造成錯誤的資料範例。

測試環境

如要實際測試版本在正式環境中的運作情形,您需要一個盡可能模擬正式環境基礎架構的測試環境。如需單獨測試特定整合項目,通常會有多個測試環境執行個體。

以下是測試環境和正式環境之間的常見差異:

  • 測試環境可能缺少某些功能或整合項目,因而造成副作用。例如,暫存環境可能設定為不傳送電子郵件。

  • 測試環境可能含有去識別化資料,這些資料可以是假的,但應符合實際情況。由於測試環境是安全偵錯問題的地方,因此您可能會授予更廣泛的團隊存取測試資料的權限,而非正式環境資料。因此,為保護使用者隱私,請勿在測試環境中使用實際使用者資料。

正式環境 (prod)

您維護的每個應用程式都需要一個正式環境。使用者會與這個執行個體互動。

與其他可以變更、刪除和/或重新建立資料的環境不同,正式環境中的資料非常重要;遺失或變更正式環境資料會直接影響使用者。

在 Firebase 控制台中,建議您將與正式環境相關聯的 Firebase 專案標記為「正式」環境類型。這個標記可提醒您和團隊成員,任何變更都可能影響相關聯的正式環境應用程式及其資料。

後續步驟