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 z użyciem Cloud Firestore, Bazy danych czasu rzeczywistego, Cloud Storage dla Firebase, Uwierzytelniania, Hostingu Firebase, Cloud Functions (beta), Pub/Sub (beta) oraz Rozszerzeń w Firebase (beta). Oferuje rozbudowany interfejs, który ułatwia szybkie uruchamianie i tworzenie prototypów.

Programowanie lokalne przy użyciu Pakietu emulatorów lokalnych może się doskonale sprawdzić w przepływach pracy związanych z ocenami, prototypami, programowaniem i ciągłą integracją.

Dodaję Pakiet emulatorów lokalnych Firebase do przepływów pracy programistycznych.

Zanim zaczniesz

Zanim zapoznasz się z Pakietem emulatorów lokalnych Firebase, zapoznaj się z usługami Firebase i modelem programistycznym Firebase:

  • Zapoznaj się z artykułami Pierwsze kroki z Firebase dotyczącymi Twojej platformy i usług (Apple, Android lub Internet).
  • Pobierz gotową do użycia aplikację z krótkim wprowadzeniem na wybraną platformę, a następnie przeczytaj i wykonaj kod. Dobrym pomysłem jest aplikacja FriendsEats (na iOS, Androida lub sieć).

Co to jest Pakiet emulatorów lokalnych Firebase?

Pakiet emulatorów lokalnych Firebase składa się z poszczególnych emulatorów usług, które wiernie naśladują działanie usług Firebase. Oznacza to, że możesz połączyć aplikację bezpośrednio z tymi emulatorami, by przeprowadzić testy integracji lub kontrolę jakości bez ingerencji w dane produkcyjne.

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

Pakiet emulatorów w lokalnych przepływach pracy

Twój prototyp i testowy przepływ pracy może korzystać z Pakietu emulatorów lokalnych na kilka sposobów:

  • Testy jednostkowe: za pomocą pakietu SDK Firebase Test możesz pisać testy jednostkowe w Node.js za pomocą narzędzia do uruchamiania testów mokki. Pakiet SDK do testów udostępnia kilka wygodnych metod wczytywania reguł zabezpieczeń, opróżniania lokalnej bazy danych między testami i zarządzania synchroniczną interakcją z emulatorami. Najlepiej sprawdza się przy pisaniu prostych testów interakcji z bazą danych, które nie zależą od logiki aplikacji.
  • Testy integracji: każdy emulator produktów w Pakiecie emulatorów odpowiada na wywołania pakietu SDK i interfejsu API REST tak samo jak produkcyjne usługi Firebase. Możesz więc używać własnych narzędzi testowych do pisania niezależnych testów integracji, które wykorzystują jako backend Pakiet emulatorów lokalnych.
  • Testy ręczne: możesz połączyć uruchomioną aplikację z Pakietem emulatorów lokalnych, aby ręcznie przetestować aplikację Firebase bez ryzyka dla danych produkcyjnych ani skonfigurowania projektu testowego.
  • Oceny usług: możesz instalować rozszerzenia Firebase i nimi zarządzać w bezpiecznym lokalnym środowisku, a także lepiej poznawać ich możliwości przy minimalizacji kosztów rozliczeń.

Które funkcje i platformy Firebase są obsługiwane?

Pakiet emulatorów lokalnych Firebase umożliwia testowanie kodu z naszymi podstawowymi usługami w sposób współdziałający. Emulator Cloud Functions obsługuje funkcje HTTP, możliwe do wywoływania oraz funkcje działające w tle, które są aktywowane 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 dla Firebase mają wbudowaną emulację reguł zabezpieczeń Firebase.

Cloud
Firestore
Baza danych
czasu rzeczywistego
Cloud
Miejsce na dane
dla Firebase
Uwierzytelnianie Funkcje Cloud
Cloud
Pub/Sub
Rozszerzenia
Pakiet SDK na Androida Nie dotyczy Nie dotyczy
SDK na iOS Nie dotyczy Nie dotyczy
Pakiet SDK na komputery Nie dotyczy Nie dotyczy
Pakiet SDK Node.js Admin Nie dotyczy Nie dotyczy

Dalsze kroki

Inne narzędzia do tworzenia prototypów i testowania

Pakiet emulatorów uzupełnia inne narzędzia prototypowe i testowe.

Narzędzia do testowania Cloud Functions. Środowisko wiersza poleceń Firebase umożliwia tworzenie prototypów i testowania funkcji na kilka sposobów:

  • Emulator Cloud Functions, część Pakietu emulatorów. Ten emulator współpracuje z lokalnymi, aktywnymi danymi i regułami zabezpieczeń w emulatorze Firestore lub emulatorze Bazy danych czasu rzeczywistego.
  • Powłoka Cloud Functions umożliwiająca tworzenie prototypów i programowanie interaktywnych funkcji iteracyjnych. W powłoce wykorzystywany jest emulator Cloud Functions z interfejsem w stylu REPL na potrzeby programowania. Nie ma integracji z emulatorami Cloud Firestore ani Bazy danych czasu rzeczywistego. Powłoka służy do przykładania danych i wykonywania wywołań funkcji symulujących interakcję z usługami, których obecnie pakiet emulatorów lokalnych nie obsługuje: Analytics, Zdalna konfiguracja i Crashlytics.
  • Firebase Test SDK dla Cloud Functions – środowiska Node.js z platformą mokha do tworzenia funkcji. W efekcie pakiet SDK Cloud Functions Test SDK zapewnia automatyzację w powłoce Cloud Functions.

Więcej informacji o powłoce Cloud Functions i pakiecie SDK Cloud Functions Test SDK znajdziesz w artykułach Interaktywne testowanie funkcji i Testowanie jednostkowe funkcji w Cloud Functions.

Narzędzia do testowania reguł zabezpieczeń Pakiet emulatorów to preferowany zestaw narzędzi do testowania reguł zabezpieczeń. Inne możliwości:

  • Eksperymentalny interfejs reguł stanowiący część konsoli Firebase. Narzędzie do tworzenia reguł umożliwia świetny, interaktywny sposób na rozpoczęcie pracy z regułami zabezpieczeń. Więcej informacji znajdziesz w artykule o szybkim weryfikowaniu reguł zabezpieczeń Firebase.