Introduzione a Firebase Local Emulator Suite

Firebase Local Emulator Suite è un insieme di strumenti avanzati per gli sviluppatori che vogliono creare e testare app localmente utilizzando Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication, Firebase Hosting, Cloud Functions (beta), Pub/Sub (beta) e Firebase Extensions (beta). Fornisce un'interfaccia utente avanzata per aiutarti a iniziare e creare prototipi rapidamente.

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

Aggiunta di Firebase Emulator Suite ai tuoi 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 gli argomenti della sezione Inizia a utilizzare Firebase per la tua piattaforma e i tuoi prodotti (Apple, Android o web).
  • Scarica un'app di avvio rapido pronta per l'uso sulla piattaforma che preferisci, quindi leggi ed esegui il codice. L'app di avvio rapido FriendlyEats è una buona scelta (iOS, Android o web).

Che cos'è Firebase Local Emulator Suite?

Firebase Local Emulator Suite è costituito da singoli emulatori di servizio creati per simulare con precisione il comportamento dei servizi Firebase. Ciò significa che puoi connettere la tua app direttamente a questi emulatori per eseguire test di integrazione o controllo qualità 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 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 flussi di lavoro locali

Il flusso di lavoro di prototipazione e test può utilizzare Local Emulator Suite in diversi modi:

  • Test delle unità: utilizzando l'SDK Firebase Test, puoi scrivere test delle unità in Node.js utilizzando il runner di test Mocha. L'SDK di test fornisce diversi metodi per caricare le regole di sicurezza, svuotare il database locale tra i test e gestire l'interazione sincrona con gli emulatori. È ideale per scrivere test semplici per le interazioni con il database che non dipendono dalla logica della tua app.
  • Test di integrazione: ogni emulatore di prodotto individuale nella suite di emulatori risponde alle chiamate API REST e SDK proprio come i servizi Firebase di produzione. In questo modo, puoi utilizzare i tuoi strumenti di test per scrivere test di integrazione autonomi che utilizzano Local Emulator Suite come backend.
  • Test manuali: puoi connettere l'applicazione in esecuzione a Local Emulator Suite per testare manualmente l'app Firebase senza rischiare di compromettere i dati di produzione o configurare un progetto di test.
  • Valutazioni dei prodotti: puoi installare e gestire Firebase Extensions in un ambiente locale sicuro e comprendere meglio le loro funzionalità riducendo al minimo i costi di fatturazione.

Quali funzionalità e piattaforme Firebase sono supportate?

Firebase Local Emulator Suite ti consente di testare il codice con i nostri prodotti principali in modo interoperabile. L'emulatore Cloud Functions supporta funzioni HTTP, funzioni chiamabili e funzioni in background attivate da Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication e Pub/Sub. Gli emulatori Cloud Firestore, Realtime Database e Cloud Storage for Firebase hanno l'emulazione Firebase Security Rules integrata.

Cloud
Firestore
In tempo reale
Database
Cloud
Storage
for Firebase
Autenticazione Cloud
Functions
Cloud
Pub/Sub
Estensioni
SDK Android N/D N/D
SDK iOS N/D N/D
SDK web N/D N/D
SDK Admin Node.js N/D N/D

Passaggi successivi

Altri strumenti per la prototipazione e i test

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

Strumenti di test di Cloud Functions. L'ambiente dell'interfaccia a riga di comando di Firebase ti 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 e live e con le regole di sicurezza nell'emulatore Firestore e/o nell'emulatore Realtime Database.
  • La shell Cloud Functions, che consente la prototipazione e lo sviluppo interattivi e iterativi delle funzioni. La shell utilizza l'emulatore Cloud Functions con un'interfaccia in stile REPL per lo sviluppo. Non è prevista alcuna integrazione con gli emulatori Cloud Firestore o Realtime Database. Utilizzando la shell, puoi simulare i dati ed eseguire chiamate di funzioni per simulare l'interazione con i prodotti che Local Emulator Suite non supporta attualmente: Analytics, Remote Config e Crashlytics.
  • L'SDK Firebase Test per Cloud Functions, un framework Node.js con mocha per lo sviluppo di funzioni. In effetti, l'SDK di test di Cloud Functions fornisce l'automazione sopra la shell di Cloud Functions.

Puoi scoprire di più sulla shell Cloud Functions e sul Cloud Functions Test SDK in Testare le funzioni in modo interattivo e Test delle unità di Cloud Functions.

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