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ą.
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
Rozpocznij od przewodnika w Pakiecie emulatorów lokalnych, który pokazuje, jak tworzyć prototypy offline bazy danych i Cloud Functions.
Dowiedz się, jak zainstalować i skonfigurować Pakiet emulatorów lokalnych.
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.