Einführung in die Firebase Local Emulator Suite

Die Firebase Local Emulator Suite ist eine Reihe von erweiterten Tools für Entwickler, die Apps lokal mit Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication, Firebase Hosting, Cloud Functions (Beta), Pub/Sub (Beta) und Firebase Extensions (Beta) entwickeln und testen möchten. Sie bietet eine umfangreiche Benutzeroberfläche, mit der Sie schnell loslegen und Prototypen erstellen können.

Die lokale Entwicklung mit der Local Emulator Suite kann sich gut für Ihre Workflows für Bewertung, Prototyping, Entwicklung und Continuous Integration eignen.

Firebase Emulator Suite zu Ihren Entwickler-Workflows hinzufügen

Hinweis

Bevor Sie sich mit der Firebase Local Emulator Suite beschäftigen, sollten Sie sich mit den Firebase-Produkten und dem Firebase-Entwicklungsmodell vertraut machen:

  • Lesen Sie die Themen unter Erste Schritte mit Firebase für Ihre Plattform und Produkte (Apple, Android oder Web).
  • Laden Sie eine sofort einsatzbereite Kurzanleitungs-App für die gewünschte Plattform herunter und 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 Firebase Local Emulator Suite?

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

Sie können Ihre App beispielsweise mit dem Cloud Firestore-Emulator verbinden, um 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 den Firebase-Produktionsdiensten, wenn keine Emulatoren verfügbar oder konfiguriert sind.

Emulator Suite in lokalen Workflows

Sie können die Local Emulator Suite auf verschiedene Arten in Ihren Prototyp- und Testworkflow einbinden:

  • Unittests: Mit dem Firebase Test SDK können Sie Unittests in Node.js mit dem Mocha-Testrunner schreiben. Das Test-SDK bietet mehrere Hilfsmethoden 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 wie Firebase-Produktionsdienste. Sie können also Ihre eigenen Testtools verwenden, um in sich geschlossene Integrationstests zu schreiben, die Local Emulator Suite als Backend verwenden.
  • Manuelle Tests: Sie können Ihre laufende Anwendung mit dem Local Emulator Suite verbinden, um Ihre Firebase-App manuell zu testen, ohne Produktionsdaten zu riskieren oder ein Testprojekt zu konfigurieren.
  • Produktbewertungen: Sie können Firebase Extensions in einer sicheren lokalen Umgebung installieren und verwalten und die Funktionen besser nachvollziehen, während Sie die Abrechnungskosten minimieren.

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

Mit der Firebase Local Emulator Suite können Sie Ihren Code mit unseren wichtigsten Produkten auf interoperable Weise testen. Der Cloud Functions-Emulator unterstützt HTTP-Funktionen, aufrufbare Funktionen und Hintergrundfunktionen, die durch Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication und Pub/Sub ausgelöst werden. Die Emulatoren Cloud Firestore, Realtime Database und Cloud Storage for Firebase haben eine integrierte Firebase Security Rules-Emulation.

Cloud
Firestore
Echtzeit
Datenbank
Cloud
Storage
for Firebase
Authentifizierung Cloud
Functions
Cloud
Pub/Sub
Erweiterungen
Android SDK
iOS SDK
Web-SDK
Node.js Admin SDK

Nächste Schritte

Weitere Tools für Prototyping und Tests

Die Emulator Suite wird durch andere Prototyp- und Testtools ergänzt.

Tools zum Testen von Cloud Functions-Funktionen: Die Firebase CLI-Umgebung bietet Ihnen verschiedene Möglichkeiten, Funktionen zu testen und Prototypen zu erstellen:

  • Der Cloud Functions-Emulator ist Teil der Emulator Suite. Dieser Emulator ist mit lokalen Live-Daten und Sicherheitsregeln im Firestore-Emulator und/oder Realtime Database-Emulator kompatibel.
  • Die Cloud Functions-Shell, die interaktive, iterative Funktionen-Prototyping und -Entwicklung ermöglicht. Die Shell verwendet den Cloud Functions-Emulator mit einer REPL-ähnlichen Schnittstelle für die Entwicklung. Es gibt keine Integration mit den Emulatoren Cloud Firestore oder Realtime Database. In der Shell können Sie Daten simulieren und Funktionsaufrufe ausführen, um die Interaktion mit Produkten zu simulieren, die von Local Emulator Suite derzeit nicht unterstützt werden: Analytics, Remote Config und Crashlytics.
  • Das Firebase Test SDK for Cloud Functions, ein Node.js-Framework mit Mocha für die Funktionsentwicklung. Das Cloud Functions Test SDK bietet also Automatisierung für die Cloud Functions-Shell.

Weitere Informationen zur Cloud Functions-Shell und zum Cloud Functions Test SDK finden Sie unter Funktionen interaktiv testen und Cloud Functions-Funktionen unit-testen.

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

  • Der Regelsimulator ist Teil der Firebase-Konsole. Der Rules Playground bietet eine interaktive Möglichkeit, sich mit dem Design von Sicherheitsregeln vertraut zu machen. Weitere Informationen finden Sie unter Firebase-Sicherheitsregeln schnell validieren.