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

Einführung in die Firebase Local Emulator Suite

Die Firebase Local Emulator Suite ist eine Reihe fortschrittlicher Tools für Entwickler, die Apps mithilfe von Cloud Firestore, Realtime Database, Cloud Storage, Authentifizierung, Cloud Functions, Pub/Sub und Firebase Hosting lokal erstellen und testen möchten. Es bietet eine umfangreiche Benutzeroberfläche, die Ihnen hilft, schnell in Betrieb zu nehmen und Prototypen zu erstellen.

Die lokale Entwicklung mit der Local Emulator Suite kann eine gute Ergänzung für Ihre Prototyping-, Entwicklungs- und Continuous Integration-Workflows sein.

Hinzufügen der Firebase Local Emulator Suite zu Ihren Entwicklungsworkflows.

Bevor Sie beginnen

Bevor Sie die Firebase Local Emulator Suite erkunden, empfehlen wir Ihnen, sich an den Firebase-Produkten und dem Firebase-Entwicklungsmodell zu orientieren:

  • Lesen Sie die Themen Erste Schritte mit Firebase für Ihre Plattform und Produkte ( iOS , Android oder Web ).
  • Laden Sie eine einsatzbereite Schnellstart-App auf die Plattform Ihrer Wahl herunter, lesen Sie den Code durch und führen Sie ihn aus. Die FriendlyEats-Schnellstart-App ist eine gute Wahl ( iOS , Android oder Web ).

Was ist die Firebase Local Emulator Suite?

Die Firebase Local Emulator Suite besteht aus einzelnen Dienstemulatoren, die entwickelt wurden, um das Verhalten von Firebase-Diensten genau nachzuahmen. Das bedeutet, dass Sie Ihre App direkt mit diesen Emulatoren verbinden können, um Integrationstests oder QS durchzuführen, ohne Produktionsdaten zu berühren.

Sie können Ihre App beispielsweise mit dem Cloud Firestore-Emulator verbinden, um beim Testen Dokumente sicher zu lesen und zu schreiben. Diese Schreibvorgänge können Funktionen im Cloud Functions-Emulator auslösen. Ihre App kommuniziert jedoch weiterhin mit Firebase-Produktionsdiensten, wenn Emulatoren nicht verfügbar oder konfiguriert sind.

Emulator Suite in Ihren lokalen Workflows

Ihr Prototyp- und Testworkflow kann die Local Emulator Suite auf drei Arten nutzen:

  • Unit Tests : Mit dem Firebase Test SDK können Sie Unit Tests in Node.js mit dem Mocha Test Runner schreiben. Das Test SDK bietet mehrere praktische Methoden zum Laden von Sicherheitsregeln, zum Leeren der lokalen Datenbank zwischen Tests und zum Verwalten der synchronen Interaktion mit den Emulatoren. Es eignet sich hervorragend zum Schreiben einfacher Tests für Datenbankinteraktionen, die nicht von der Logik Ihrer App abhängen.
  • Integrationstests : Jeder einzelne Produktemulator in der Emulator Suite reagiert auf SDK- und REST-API-Aufrufe genau wie Firebase-Produktionsdienste. So können Sie mit Ihren eigenen Testtools eigenständige Integrationstests schreiben, die die Local Emulator Suite als Backend verwenden.
  • Manuelle Tests : Sie können Ihre laufende Anwendung mit der Local Emulator Suite verbinden, um Ihre Firebase-App manuell zu testen, ohne Produktionsdaten zu riskieren oder ein Testprojekt zu konfigurieren.

Welche Firebase-Funktionen und -Plattformen werden unterstützt?

Mit der Firebase Local Emulator Suite können Sie Ihren Code interoperabel mit unseren Kernprodukten testen. Der Cloud Functions-Emulator unterstützt HTTP-Funktionen, aufrufbare Funktionen und Hintergrundfunktionen, die von Cloud Firestore, Realtime Database, Authentication und Pub/Sub ausgelöst werden. der Cloud Functions-Emulator unterstützt keine Hintergrundfunktionen, die von Cloud Storage for Firebase ausgelöst werden. Für Cloud Firestore- und Realtime Database-Emulatoren ist die Emulation von Sicherheitsregeln integriert.

Wolke
Feuerladen
Echtzeit
Datenbank
Wolke
Lager
Authentifizierung Wolke
Funktionen
Wolke
Pub/Sub
Android SDK n / A
iOS-SDK n / A
Web-SDK n / A
Node.js-Admin-SDK n / A

Nächste Schritte

Andere Tools für Prototyping und Testen

Die Emulator Suite wird durch weitere Prototypen- und Testwerkzeuge ergänzt.

Cloud Functions-Testtools. Die Firebase CLI-Umgebung bietet Ihnen mehrere Möglichkeiten zum Prototyping und Testen von Funktionen:

  • Der Cloud Functions-Emulator, Teil der Emulator Suite. Dieser Emulator ist mit lokalen Live-Daten und Sicherheitsregeln im Firestore-Emulator und/oder dem Realtime Database-Emulator interoperabel.
  • Die Cloud Functions-Shell, die das Prototyping und die Entwicklung interaktiver, iterativer Funktionen ermöglicht. Die Shell verwendet den Cloud Functions-Emulator mit einer Schnittstelle im REPL-Stil für die Entwicklung. Eine Integration mit den Emulatoren von Cloud Firestore oder Realtime Database ist nicht vorgesehen. Mithilfe der Shell simulieren Sie Daten und führen Funktionsaufrufe durch, um die Interaktion mit Produkten zu simulieren, die die Local Emulator Suite derzeit nicht unterstützt: Cloud Storage, Pub/Sub, Analytics, Remote Config, Storage, Auth und Crashlytics.
  • Das Firebase Test SDK for Cloud Functions, ein Node.js mit Mokka-Framework für die Funktionsentwicklung. Tatsächlich bietet das Cloud Functions Test SDK eine Automatisierung auf der Cloud Functions-Shell.

Weitere Informationen zur Cloud Functions-Shell und zum Cloud Functions Test SDK finden Sie unter Interaktive Testfunktionen und Komponententests von Cloud Functions .

Tools zum Testen von Sicherheitsregeln. Emulator Suite ist das bevorzugte Toolset zum Testen von Sicherheitsregeln. Sie können jedoch auch Folgendes verwenden:

  • Der Rules Playground, ein Teil der Firebase-Konsole. Der Rules Playground bietet einen großartigen interaktiven Einstieg in das Design von Sicherheitsregeln. Weitere Informationen finden Sie unter Firebase-Sicherheitsregeln schnell validieren .