Wprowadzenie do pakietu emulatorów lokalnych Firebase

Pakiet emulatorów lokalnych Firebase to zestaw zaawansowanych narzędzi dla programistów, którzy chcą tworzyć i testować aplikacje lokalnie przy użyciu Cloud Firestore, bazy danych czasu rzeczywistego, magazynu w chmurze, uwierzytelniania, funkcji w chmurze, Pub/Sub i hostingu Firebase. Zapewnia bogaty interfejs użytkownika, który pomaga w szybkim uruchomieniu i prototypowaniu.

Programowanie lokalne z pakietem Local Emulator Suite może być dobrym rozwiązaniem dla przepływów pracy związanych z prototypowaniem, rozwojem i ciągłą integracją.

Dodanie pakietu Firebase Local Emulator Suite do przepływów pracy programistycznej.

Zanim zaczniesz

Zanim zapoznasz się z pakietem emulatorów lokalnych Firebase, zalecamy zapoznanie się z produktami Firebase i modelem programistycznym Firebase:

  • Przeczytać zacząć z tematów Firebase dla danej platformy i produktów ( firmy Apple , Android lub Web ).
  • Pobierz gotową do uruchomienia aplikację szybkiego startu na wybraną platformę, a następnie przeczytaj i wykonaj kod. The FriendlyEats QuickStart aplikacja jest dobry wybór ( iOS , Android lub Web ).

Co to jest pakiet emulatorów lokalnych Firebase?

Pakiet Firebase Local Emulator Suite składa się z indywidualnych emulatorów usług zbudowanych w celu dokładnego naśladowania zachowania usług Firebase. Oznacza to, że możesz połączyć swoją aplikację bezpośrednio z tymi emulatorami, aby przeprowadzić testy integracji lub kontrolę jakości bez dotykania danych produkcyjnych.

Możesz na przykład połączyć swoją aplikację z emulatorem Cloud Firestore, aby bezpiecznie czytać i pisać dokumenty podczas testów. Te zapisy mogą uruchamiać funkcje w emulatorze Cloud Functions. Jednak Twoja aplikacja będzie nadal komunikować się z produkcyjnymi usługami Firebase, gdy emulatory nie będą dostępne lub skonfigurowane.

Pakiet emulatorów w lokalnych przepływach pracy

Twój przepływ pracy prototypów i testów może korzystać z lokalnego zestawu emulatorów na trzy sposoby:

  • Testy jednostkowe: wykorzystujące Firebase testową SDK można pisać testy jednostkowe w node.js pomocą zawodnik testowy mokka. Test SDK zapewnia kilka wygodnych metod ładowania reguł bezpieczeństwa, opróżniania lokalnej bazy danych między testami i zarządzania synchroniczną interakcją z emulatorami. Świetnie nadaje się do pisania prostych testów interakcji z bazą danych, które nie zależą od logiki aplikacji.
  • Testy integracyjne: każdy pojedynczy produkt w emulator emulator Suite odpowiada SDK i REST API tak jak produkcyjnych usług Firebase. Możesz więc użyć własnych narzędzi testowych do pisania niezależnych testów integracyjnych, które wykorzystują lokalny pakiet emulatorów jako zaplecze.
  • Ręczne Testy: można podłączyć aplikację działającą na lokalnym Emulator Suite przetestować aplikację Firebase ręcznie, bez narażania danych produkcyjnych lub konfiguracji projekt testowy.

Jakie funkcje i platformy Firebase są obsługiwane?

Pakiet Firebase Local Emulator Suite umożliwia testowanie kodu za pomocą naszych podstawowych produktów w sposób interoperacyjny. Emulator Cloud Functions obsługuje funkcje HTTP, funkcje wywoływane i funkcje działające w tle wyzwalane przez Cloud Firestore, bazę danych czasu rzeczywistego, przechowywanie w chmurze, uwierzytelnianie i Pub/Sub. Emulatory Cloud Firestore, Realtime Database i Cloud Storage mają wbudowaną emulację Firebase Security Rules.

Chmura
Firestore
Czas rzeczywisty
Baza danych
Chmura
Przechowywanie
Uwierzytelnianie Chmura
Funkcje
Chmura
Pub/Sub
Android SDK nie dotyczy
Pakiet SDK dla iOS nie dotyczy
Internetowy pakiet SDK nie dotyczy
Pakiet SDK administratora Node.js nie dotyczy

Następne kroki

Inne narzędzia do prototypowania i testowania

Pakiet Emulator jest uzupełniony o inne narzędzia prototypowe i testowe.

Narzędzia do testowania Cloud Functions. Środowisko Firebase CLI zapewnia kilka sposobów prototypowania i testowania funkcji:

  • Emulator Cloud Functions, część pakietu emulatorów. Ten emulator jest kompatybilny z lokalnymi, aktywnymi danymi i regułami bezpieczeństwa w emulatorze Firestore i/lub emulatorze bazy danych czasu rzeczywistego.
  • Powłoka Cloud Functions, która umożliwia interaktywne, iteracyjne prototypowanie i opracowywanie funkcji. Powłoka wykorzystuje emulator Cloud Functions z interfejsem w stylu REPL do programowania. Brak integracji z emulatorami Cloud Firestore lub Realtime Database. Za pomocą powłoki symulujesz dane i wykonujesz wywołania funkcji, aby symulować interakcję z produktami, których pakiet emulatorów lokalnych obecnie nie obsługuje: Analytics, Remote Config i Crashlytics.
  • Firebase Test SDK dla Cloud Functions, Node.js z frameworkiem mokka do tworzenia funkcji. W efekcie pakiet SDK Cloud Functions Test zapewnia automatyzację w powłoce Cloud Functions.

Można znaleźć więcej o funkcjach powłoki i funkcje Chmura Chmura testu SDK na funkcje testowe interaktywnie i testów jednostkowych funkcji chmurze .

Narzędzia do testowania reguł bezpieczeństwa. Emulator Suite to preferowany zestaw narzędzi do testowania reguł bezpieczeństwa. Możesz jednak również użyć: