Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

Firebase Local EmulatorSuiteの概要

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Firebase Local Emulator Suite は、Cloud Firestore、Realtime Database、Cloud Storage for Firebase、Authentication、Firebase Hosting、Cloud Functions (ベータ)、Pub/Sub (ベータ)、および Firebase Extensions(ベータ版)。実行とプロトタイピングを迅速に行うのに役立つ豊富なユーザー インターフェイスを提供します。

Local Emulator Suite を使用したローカル開発は、評価、プロトタイピング、開発、および継続的インテグレーションのワークフローに適しています。

開発ワークフローに Firebase Local Emulator Suite を追加します。

あなたが始める前に

Firebase Local Emulator Suite を探索する前に、Firebase 製品と Firebase 開発モデルについて理解することをお勧めします。

  • プラットフォームと製品 ( AppleAndroidまたはWeb ) のFirebase の開始に関するトピックをお読みください。
  • 選択したプラットフォームですぐに実行できるクイックスタート アプリをダウンロードし、コードを読んで実行します。 FriendlyEats クイックスタート アプリ ( iOSAndroid 、またはWeb ) が適しています。

Firebase Local Emulator Suite とは何ですか?

Firebase Local Emulator Suite は、Firebase サービスの動作を正確に模倣するために構築された個々のサービス エミュレータで構成されています。これは、アプリをこれらのエミュレーターに直接接続して、運用データに触れることなく統合テストや QA を実行できることを意味します。

たとえば、アプリを Cloud Firestore エミュレータに接続して、テストでドキュメントを安全に読み書きすることができます。これらの書き込みは、Cloud Functions エミュレーターで関数をトリガーする場合があります。ただし、エミュレーターが利用できない場合や構成されていない場合でも、アプリは引き続き本番用の Firebase サービスと通信します。

ローカル ワークフローの Emulator Suite

プロトタイプとテストのワークフローでは、Local Emulator Suite をいくつかの方法で利用できます。

  • 単体テスト: Firebase Test SDK を使用すると、mocha テスト ランナーを使用して Node.js で単体テストを作成できます。テスト SDK には、セキュリティ ルールの読み込み、テスト間のローカル データベースのフラッシュ、およびエミュレーターとの同期対話の管理のための便利なメソッドがいくつか用意されています。アプリのロジックに依存しないデータベース操作の簡単なテストを作成するのに最適です。
  • 統合テスト: Emulator Suite 内の個々の製品エミュレータは、本番の Firebase サービスと同様に、SDK および REST API 呼び出しに応答します。そのため、独自のテスト ツールを使用して、Local Emulator Suite をバックエンドとして使用する自己完結型の統合テストを作成できます。
  • 手動テスト: 実行中のアプリケーションを Local Emulator Suite に接続して、本番データを危険にさらしたり、テスト プロジェクトを構成したりすることなく、Firebase アプリを手動でテストできます。
  • 製品の評価: Firebase Extensions を安全なローカル環境にインストールして管理し、請求コストを最小限に抑えながらその機能をよりよく理解できます。

どの Firebase 機能とプラットフォームがサポートされていますか?

Firebase Local Emulator Suite を使用すると、相互運用可能な方法でコア製品を使用してコードをテストできます。 Cloud Functions エミュレータは、Cloud Firestore、Realtime Database、Cloud Storage for Firebase、Authentication、および Pub/Sub によってトリガーされる HTTP 関数、呼び出し可能な関数、およびバックグラウンド関数をサポートしています。 Cloud Firestore、Realtime Database、Cloud Storage for Firebase エミュレータには、Firebase セキュリティ ルールのエミュレーションが組み込まれています。

クラウド
ファイアストア
リアルタイム
データベース
クラウド
保管所
Firebase 用
認証クラウド
機能
クラウド
パブ/サブ
拡張機能
Android SDK なしなし
iOS SDK なしなし
Web SDK なしなし
Node.js 管理 SDK なしなし

次のステップ

プロトタイピングとテスト用のその他のツール

Emulator Suite は、他のプロトタイプおよびテスト ツールによって補完されます。

Cloud Functions テスト ツール。 Firebase CLI 環境には、関数のプロトタイプとテストを行うためのいくつかの方法が用意されています。

  • Emulator Suite の一部である Cloud Functions エミュレーター。このエミュレータは、Firestore エミュレータや Realtime Database エミュレータのローカルのライブ データおよびセキュリティ ルールと相互運用できます。
  • インタラクティブで反復的な関数のプロトタイピングと開発を可能にする Cloud Functions シェル。シェルは、開発用に REPL スタイルのインターフェースを備えた Cloud Functions エミュレーターを採用しています。 Cloud Firestore または Realtime Database エミュレーターとの統合は提供されません。シェルを使用してデータをモックし、関数呼び出しを実行して、ローカル エミュレーター スイートが現在サポートしていない製品 (Analytics、Remote Config、および Crashlytics) との相互作用をシミュレートします。
  • 関数開発用の mocha フレームワークを備えた Node.js である、Cloud Functions 用の Firebase Test SDK。実際、Cloud Functions Test SDK は、Cloud Functions シェル上で自動化を提供します。

Cloud Functions シェルと Cloud Functions Test SDK の詳細については、関数をインタラクティブにテストする および Cloud Functionsの単体テスト を参照してください。

セキュリティ ルール テスト ツール。 Emulator Suite は、セキュリティ ルールをテストするための推奨ツールセットです。ただし、次のものも使用できます。

  • Firebase コンソールの一部であるルール プレイグラウンド。ルール プレイグラウンドは、セキュリティ ルールの設計を開始するための優れた対話型エクスペリエンスを提供します。詳細については、「 Firebase セキュリティ ルールをすばやく検証する」を参照してください。