Pakiet Firebase Local Emulator Suite 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 szybko uruchomić i prototypować.
Programowanie lokalne za pomocą pakietu Local Emulator Suite może dobrze pasować do procesów oceny, prototypowania, programowania i ciągłej integracji.
Zanim zaczniesz
Zanim poznasz pakiet Firebase Local Emulator Suite, zalecamy zapoznanie się z produktami Firebase i modelem rozwoju Firebase:
- Przeczytaj tematy Rozpocznij pracę z Firebase dotyczące Twojej platformy i produktów ( Apple , Android lub Internet ).
- 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 Internet ).
Co to jest pakiet lokalnego emulatora 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 integracyjne 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 zapisywać dokumenty podczas testowania. 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 prototyp i przepływ pracy testowej mogą wykorzystywać pakiet lokalnych emulatorów na kilka sposobów:
- Testy jednostkowe : korzystając z pakietu SDK Firebase Test, możesz pisać testy jednostkowe w Node.js, korzystając z modułu uruchamiającego testy mokka. Test SDK udostępnia kilka wygodnych metod ładowania reguł zabezpieczeń, opróżniania lokalnej bazy danych pomię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 emulator produktu w pakiecie Emulator Suite odpowiada na wywołania SDK i REST API, podobnie jak produkcyjne usługi Firebase. Możesz więc używać własnych narzędzi testowych do pisania samodzielnych testów integracyjnych, które korzystają z pakietu Local Emulator Suite jako zaplecza.
- Testy ręczne : możesz podłączyć działającą aplikację do pakietu Local Emulator Suite, 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 i lepiej poznać ich możliwości, minimalizując jednocześnie koszty rozliczeniowe.
Które funkcje i platformy Firebase są obsługiwane?
Pakiet Firebase Local Emulator Suite umożliwia interoperacyjne testowanie kodu z naszymi podstawowymi produktami. Emulator Cloud Functions obsługuje funkcje HTTP, funkcje wywoływalne i funkcje w tle uruchamiane przez Cloud Firestore, bazę danych czasu rzeczywistego, Cloud Storage dla Firebase, uwierzytelnianie i Pub/Sub. Emulatory Cloud Firestore, Realtime Database i Cloud Storage for Firebase mają wbudowaną emulację reguł zabezpieczeń Firebase.
Chmura Sklep z ogniem | Czas rzeczywisty Baza danych | Chmura Składowanie dla Firebase | Uwierzytelnianie | Chmura Funkcje | Chmura Pub/sub | Rozszerzenia | |
---|---|---|---|---|---|---|---|
SDK dla Androida | nie dotyczy | nie dotyczy | |||||
Zestaw SDK dla iOS | nie dotyczy | nie dotyczy | |||||
Internetowy zestaw SDK | nie dotyczy | nie dotyczy | |||||
Pakiet SDK administratora Node.js | nie dotyczy | nie dotyczy |
Następne kroki
Zacznij od przewodnika po pakiecie Local Emulator Suite, który pokazuje, jak można wykonać prototypowanie bazy danych i funkcji Cloud Functions w trybie offline.
Dowiedz się, jak zainstalować i skonfigurować pakiet lokalnego emulatora .
Inne narzędzia do prototypowania i testowania
Pakiet emulatorów jest uzupełniany przez 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 będący częścią pakietu Emulator Suite. Ten emulator współpracuje z lokalnymi, bieżącymi 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 do programowania emulator Cloud Functions z interfejsem w stylu REPL. Nie zapewnia się integracji z emulatorami Cloud Firestore ani Realtime Database. Korzystając z powłoki, kpisz z danych i wykonujesz wywołania funkcji w celu symulacji interakcji z produktami, których obecnie nie obsługuje pakiet Local Emulator Suite: Analytics, Remote Config i Crashlytics.
- Zestaw SDK Firebase Test dla funkcji w chmurze, framework Node.js z mocha do tworzenia funkcji. W rezultacie pakiet SDK Cloud Functions Test zapewnia automatyzację na powłoce Cloud Functions.
Więcej informacji na temat powłoki Cloud Functions i pakietu SDK Cloud Functions Test SDK znajdziesz w artykułach Testuj funkcje interaktywnie i Testowanie jednostkowe Cloud Functions .
Narzędzia do testowania reguł bezpieczeństwa. Pakiet Emulator to preferowany zestaw narzędzi do testowania reguł bezpieczeństwa. Możesz jednak również użyć:
- Plac zabaw z zasadami, część konsoli Firebase. Plac zabaw z regułami zapewnia świetne, interaktywne środowisko umożliwiające rozpoczęcie pracy z projektowaniem reguł zabezpieczeń. Aby uzyskać więcej informacji, zobacz Szybkie sprawdzanie reguł zabezpieczeń Firebase .