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 za pomocą pakietu Local Emulator Suite może być dobrym rozwiązaniem dla przepływów pracy związanych z prototypowaniem, programowaniem 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 programowania Firebase:

  • Przeczytać zacząć z tematów Firebase dla danej platformy i produktów ( iOS , 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ł zabezpieczeń, 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 samodzielnych testów integracyjnych, które używają lokalnego pakietu emulatorów jako zaplecza.
  • 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 uruchamiane przez Cloud Firestore, bazę danych czasu rzeczywistego, uwierzytelnianie i Pub/Sub; emulator Cloud Functions nie obsługuje funkcji działających w tle uruchamianych przez Cloud Storage for Firebase. W przypadku emulatorów Cloud Firestore i Realtime Database emulacja reguł zabezpieczeń jest wbudowana.

Chmura
Firestore
Czas rzeczywisty
Baza danych
Chmura
Przechowywanie
Poświadczenie Chmura
Funkcje
Chmura
Pub/Sub
Android SDK nie dotyczy
Pakiet SDK dla iOS nie dotyczy
Web SDK nie dotyczy
Pakiet administracyjny 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 rozwój funkcji. Powłoka wykorzystuje emulator Cloud Functions z interfejsem w stylu REPL do programowania. Nie zapewnia się integracji z emulatorami Cloud Firestore ani 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: Cloud Storage, Pub/Sub, Analytics, Remote Config, Storage, Auth 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ć: