Introduzione a Firebase Local Emulator Suite

Firebase Local Emulator Suite è un set di strumenti avanzati per gli sviluppatori che desiderano creare e testare app localmente utilizzando Cloud Firestore, Realtime Database, Cloud Storage, Autenticazione, Cloud Functions, Pub/Sub e Firebase Hosting. Fornisce una ricca interfaccia utente per aiutarti a eseguire rapidamente e a creare prototipi.

Lo sviluppo locale con Local Emulator Suite può essere una buona soluzione per i tuoi flussi di lavoro di prototipazione, sviluppo e integrazione continua.

Aggiunta di Firebase Local Emulator Suite ai flussi di lavoro di sviluppo.

Prima di iniziare

Prima di esplorare Firebase Local Emulator Suite, ti consigliamo di orientarti ai prodotti Firebase e al modello di sviluppo Firebase:

  • Leggi la Get iniziato con argomenti Firebase per la piattaforma e prodotti ( iOS , Android o Web ).
  • Scarica un'app di avvio rapido pronta per l'uso sulla piattaforma che preferisci, quindi leggi ed esegui il codice. I FriendlyEats QuickStart app è una buona scelta ( iOS , Android o Web ).

Che cos'è Firebase Local Emulator Suite?

La Firebase Local Emulator Suite è costituita da singoli emulatori di servizi creati per imitare accuratamente il comportamento dei servizi Firebase. Ciò significa che puoi connettere la tua app direttamente a questi emulatori per eseguire test di integrazione o QA senza toccare i dati di produzione.

Ad esempio, puoi connettere la tua app all'emulatore Cloud Firestore per leggere e scrivere documenti in modo sicuro durante i test. Queste scritture possono attivare funzioni nell'emulatore di Cloud Functions. Tuttavia, la tua app continuerà a comunicare con i servizi Firebase di produzione quando gli emulatori non sono disponibili o configurati.

Emulator Suite nei tuoi flussi di lavoro locali

Il tuo prototipo e flusso di lavoro di test può utilizzare Local Emulator Suite in tre modi:

  • Unit test: utilizzando il test Firebase SDK, è possibile scrivere unit test in Node.js utilizzando il test runner moka. Test SDK fornisce diversi metodi pratici per caricare le regole di sicurezza, svuotare il database locale tra i test e gestire l'interazione sincrona con gli emulatori. È ottimo per scrivere test semplici per le interazioni del database che non dipendono dalla logica dell'app.
  • Test di integrazione: ogni singolo prodotto emulatore nell'emulatore Suite risponde a SDK e riposare chiamate API, proprio come produzione di servizi Firebase. Quindi puoi utilizzare i tuoi strumenti di test per scrivere test di integrazione autonomi che utilizzano Local Emulator Suite come backend.
  • Test manuali: è possibile collegare l'applicazione in esecuzione per l'emulatore Suite locale per testare la vostra applicazione Firebase manualmente, senza rischiare i dati di produzione o la configurazione di un progetto di test.

Quali funzionalità e piattaforme Firebase sono supportate?

La Firebase Local Emulator Suite ti consente di testare il tuo codice con i nostri prodotti principali in modo interoperabile. L'emulatore di Cloud Functions supporta funzioni HTTP, funzioni richiamabili e funzioni in background attivate da Cloud Firestore, Realtime Database, Authentication e Pub/Sub; l'emulatore di Cloud Functions non supporta le funzioni in background attivate da Cloud Storage per Firebase. Per gli emulatori Cloud Firestore e Realtime Database, l'emulazione delle regole di sicurezza è integrata.

Nuvola
Firestore
Tempo reale
Banca dati
Nuvola
Conservazione
Autenticazione Nuvola
Funzioni
Nuvola
Pub/Sottotitoli
SDK Android Android n / A
SDK iOS iOS n / A
SDK Web n / A
SDK di amministrazione di Node.js n / A

Prossimi passi

Altri strumenti per la prototipazione e il test

Emulator Suite è integrato da altri prototipi e strumenti di test.

Strumenti di test delle funzioni cloud. L'ambiente Firebase CLI offre diversi modi per prototipare e testare le funzioni:

  • L'emulatore di Cloud Functions, parte di Emulator Suite. Questo emulatore è interoperabile con i dati locali in tempo reale e le regole di sicurezza nell'emulatore Firestore e/o nell'emulatore Realtime Database.
  • La shell Cloud Functions, che consente la prototipazione e lo sviluppo di funzioni interattive e iterative. La shell utilizza l'emulatore di Cloud Functions con un'interfaccia in stile REPL per lo sviluppo. Non viene fornita alcuna integrazione con gli emulatori Cloud Firestore o Realtime Database. Utilizzando la shell, puoi simulare i dati ed eseguire chiamate di funzione per simulare l'interazione con prodotti che la Local Emulator Suite non supporta attualmente: Cloud Storage, Pub/Sub, Analytics, Remote Config, Storage, Auth e Crashlytics.
  • Il Firebase Test SDK per Cloud Functions, un Node.js con framework mocha per lo sviluppo di funzioni. In effetti, l'SDK di Cloud Functions Test fornisce l'automazione nella shell di Cloud Functions.

È possibile trovare maggiori informazioni delle funzioni cloud Shell e funzioni cloud di test SDK in Funzioni di test interattivo e Unit Testing delle funzioni cloud .

Strumenti di test delle regole di sicurezza. Emulator Suite è il set di strumenti preferito per testare le regole di sicurezza. Tuttavia, puoi anche usare:

  • The Rules Playground, una parte della console Firebase. The Rules Playground offre un'ottima esperienza interattiva per iniziare con la progettazione delle regole di sicurezza. Per ulteriori informazioni consultare rapidamente i validate Firebase Regole di sicurezza .