Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Firebase 本地模擬器套件簡介

Firebase 本地模擬器套件是一組高級工具,適用於希望使用 Cloud Firestore、實時數據庫、Cloud Storage、身份驗證、Cloud Functions、Pub/Sub 和 Firebase 託管在本地構建和測試應用程序的開發人員。它提供了豐富的用戶界面,可幫助您快速運行和原型設計。

使用 Local Emulator Suite 進行本地開發非常適合您的原型設計、開發和持續集成工作流程。

將 Firebase Local Emulator Suite 添加到您的開發工作流程中。

在你開始之前

在您探索 Firebase 本地模擬器套件之前,我們建議您先了解 Firebase 產品和 Firebase 開發模型:

  • 閱讀適用於您的平台和產品( iOSAndroidWeb )的Firebase 入門主題。
  • 在您選擇的平台上下載一個隨時可以運行的快速入門應用程序,然後通讀並執行代碼。 FriendlyEats 快速入門應用程序是一個不錯的選擇( iOSAndroidWeb )。

什麼是 Firebase 本地模擬器套件?

Firebase 本地模擬器套件由獨立的服務模擬器組成,旨在準確模擬 Firebase 服務的行為。這意味著您可以將您的應用程序直接連接到這些模擬器以執行集成測試或 QA,而無需接觸生產數據。

例如,您可以將您的應用連接到 Cloud Firestore 模擬器,以在測試中安全地讀寫文檔。這些寫入可能會觸發 Cloud Functions 模擬器中的函數。但是,當模擬器不可用或未配置時,您的應用仍將繼續與生產 Firebase 服務通信。

本地工作流程中的模擬器套件

您的原型和測試工作流程可以通過三種方式使用本地模擬器套件:

  • 單元測試:使用 Firebase 測試 SDK,您可以使用 mocha 測試運行程序在 Node.js 中編寫單元測試。測試 SDK 提供了幾種方便的方法來加載安全規則、在測試之間刷新本地數據庫以及管理與模擬器的同步交互。它非常適合為不依賴於應用程序邏輯的數據庫交互編寫簡單的測試。
  • 集成測試:模擬器套件中的每個單獨的產品模擬器都像生產 Firebase 服務一樣響應 SDK 和 REST API 調用。因此,您可以使用自己的測試工具編寫使用本地模擬器套件作為後端的自包含集成測試。
  • 手動測試:您可以將正在運行的應用程序連接到本地模擬器套件以手動測試您的 Firebase 應用程序,而不會冒生產數據或配置測試項目的風險。

支持哪些 Firebase 功能和平台?

Firebase 本地模擬器套件允許您以可互操作的方式使用我們的核心產品測試您的代碼。 Cloud Functions 模擬器支持 HTTP 函數、可調用函數以及由 Cloud Firestore、實時數據庫、身份驗證和 Pub/Sub 觸發的後台函數; Cloud Functions 模擬器不支持 Cloud Storage for Firebase 觸發的後台函數。對於 Cloud Firestore 和實時數據庫模擬器,內置了安全規則模擬。


火店
即時的
數據庫

貯存
驗證
職能

發布/訂閱
安卓SDK 不適用
iOS SDK 不適用
網頁軟件開發工具包不適用
Node.js 管理 SDK 不適用

下一步

用於原型設計和測試的其他工具

Emulator Suite 由其他原型和測試工具補充。

Cloud Functions 測試工具。 Firebase CLI 環境為您提供了多種方法來製作原型和測試功能:

  • Cloud Functions 模擬器,模擬器套件的一部分。此模擬器可與 Firestore 模擬器和/或實時數據庫模擬器中的本地實時數據和安全規則互操作。
  • Cloud Functions shell,允許交互式、迭代函數原型設計和開發。 Shell 使用 Cloud Functions 模擬器和 REPL 風格的接口進行開發。未提供與 Cloud Firestore 或實時數據庫模擬器的集成。使用 shell,您可以模擬數據並執行函數調用以模擬與 Local Emulator Suite 當前不支持的產品的交互:Cloud Storage、Pub/Sub、Analytics、Remote Config、Storage、Auth 和 Crashlytics。
  • 適用於 Cloud Functions 的 Firebase 測試 SDK,一個帶有用於函數開發的 mocha 框架的 Node.js。實際上,Cloud Functions 測試 SDK 在 Cloud Functions shell 之上提供了自動化。

您可以在以交互方式測試函數Cloud Functions 的單元測試中找到有關 Cloud Functions shell 和 Cloud Functions Test SDK 的更多信息。

安全規則測試工具。 Emulator Suite 是用於測試安全規則的首選工具集。但是,您也可以使用:

  • 規則操場,Firebase 控制台的一部分。規則遊樂場為安全規則設計提供了很好的交互式入門體驗。有關更多信息,請參閱快速驗證 Firebase 安全規則