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, Cloud Storage dla Firebase, Uwierzytelniania, Hostingu Firebase, Cloud Functions (beta), Pub/Sub (beta), i rozszerzenia Firebase (beta). 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 procesów oceny, prototypowania, rozwoju i ciągłej integracji.

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:

  • Przeczytaj tematy Wprowadzenie do Firebase dotyczące Twojej platformy i produktów ( Apple , Android lub Web ).
  • Pobierz gotową do uruchomienia aplikację szybkiego startu na wybraną platformę, a następnie przeczytaj i wykonaj kod. Aplikacja szybkiego startu FriendlyEats to 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 kilka sposobów:

  • Testy jednostkowe : korzystając z pakietu Firebase Test SDK, możesz pisać testy jednostkowe w Node.js za pomocą programu uruchamiającego testy 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 integracji : każdy indywidualny emulator produktu w pakiecie emulatorów odpowiada na wywołania SDK i REST API, tak jak produkcyjne usługi 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.
  • Testy ręczne : możesz połączyć uruchomioną aplikację z pakietem emulatorów lokalnych, aby ręcznie przetestować aplikację Firebase, bez narażania danych produkcyjnych lub konfigurowania projektu testowego.
  • Oceny produktów : możesz instalować rozszerzenia Firebase i zarządzać nimi w bezpiecznym środowisku lokalnym oraz lepiej rozumieć ich możliwości, jednocześnie minimalizując koszty rozliczeń.

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, Cloud Storage dla Firebase, Uwierzytelnianie i Pub/Sub. Emulatory Cloud Firestore, Baza danych czasu rzeczywistego i Cloud Storage for Firebase mają wbudowaną emulację reguł zabezpieczeń Firebase.

Chmura
Firestore
Czas rzeczywisty
Baza danych
Chmura
Magazynowanie
dla Firebase
Uwierzytelnianie Chmura
Funkcje
Chmura
Pub/Sub
Rozszerzenia
Android SDK nie dotyczy nie dotyczy
Pakiet SDK dla iOS nie dotyczy nie dotyczy
Web SDK nie dotyczy nie dotyczy
Pakiet Administracyjny Node.js nie dotyczy 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: 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.

Więcej informacji o powłoce Cloud Functions i pakiecie SDK testu Cloud Functions znajdziesz w artykułach Testuj funkcje interaktywne i Testowanie jednostkowe Cloud Functions .

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ć:

  • Plac zabaw reguł, część konsoli Firebase. Plac zabaw dla reguł zapewnia doskonałą interaktywną przygodę z projektowaniem reguł bezpieczeństwa. Aby uzyskać więcej informacji, zobacz Szybka walidacja reguł zabezpieczeń Firebase .