Introduzione alla suite di emulazione locale Firebase

Firebase Local Emulator Suite è un insieme di strumenti avanzati per gli sviluppatori che desiderano creare e testare app localmente utilizzando Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication, Firebase Hosting, Cloud Functions (beta), Pub/Sub (beta), ed estensioni Firebase (beta). Fornisce un'interfaccia utente ricca per aiutarti a iniziare a eseguire 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 Local 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 Inizia con Firebase per la tua piattaforma e i tuoi prodotti ( Apple , Android o Web ).
  • Scarica un'app di avvio rapido pronta per l'uso sulla tua piattaforma preferita, quindi leggi ed esegui il codice. L'app di avvio rapido di FriendlyEats è una buona scelta ( iOS , Android o Web ).

Cos'è la suite di emulazione locale Firebase?

La Firebase Local Emulator Suite è costituita da emulatori di servizi individuali 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, potresti connettere la tua app all'emulatore Cloud Firestore per leggere e scrivere in sicurezza i documenti 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 tuoi flussi di lavoro locali

Il tuo prototipo e il flusso di lavoro di test possono utilizzare Local Emulator Suite in diversi modi:

  • Unit test : utilizzando Firebase Test SDK, puoi scrivere unit test in Node.js utilizzando il test runner mocha. 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 semplici test per le interazioni del database che non dipendono dalla logica dell'app.
  • Test di integrazione : ogni singolo emulatore di prodotto nella Emulator Suite risponde alle chiamate SDK e API REST proprio come i servizi Firebase di produzione. Puoi quindi utilizzare i tuoi strumenti di test per scrivere test di integrazione autonomi che utilizzano Local Emulator Suite come backend.
  • Test manuali : puoi connettere la tua applicazione in esecuzione alla Local Emulator Suite per testare manualmente la tua app Firebase, senza rischiare i dati di produzione o configurare un progetto di test.
  • Valutazioni dei prodotti : puoi installare e gestire le estensioni Firebase in un ambiente locale sicuro e comprenderne meglio le capacità riducendo al minimo i costi di fatturazione.

Quali funzionalità e piattaforme Firebase sono supportate?

La suite di emulazione locale Firebase ti consente di testare il tuo codice con i nostri prodotti principali in modo interoperabile. L'emulatore Cloud Functions supporta funzioni HTTP, funzioni richiamabili 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 delle regole di sicurezza Firebase integrata.

Nuvola
Firestore
Tempo reale
Banca dati
Nuvola
Magazzinaggio
per Firebase
Autenticazione Nuvola
Funzioni
Nuvola
Pub/Sub
Estensioni
SDK Android n / a n / a
SDK per iOS n / a n / a
SDK Web n / a n / a
SDK di amministrazione Node.js n / a n / a

Prossimi passi

Altri strumenti per la prototipazione e il test

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

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

  • L'emulatore 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 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 dati ed eseguire chiamate di funzioni per simulare l'interazione con prodotti che Local Emulator Suite attualmente non supporta: Analytics, Remote Config e Crashlytics.
  • Firebase Test SDK per Cloud Functions, un Node.js con framework mocha per lo sviluppo di funzioni. In effetti, l'SDK di test di Cloud Functions fornisce l'automazione sulla shell di Cloud Functions.

Puoi trovare ulteriori informazioni sulla shell di Cloud Functions e sull'SDK di test di Cloud Functions nella sezione Test delle funzioni in modo interattivo e Test unitario di Cloud Functions .

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

  • The Rules Playground, una parte della console Firebase. Il Rules Playground offre un'ottima esperienza introduttiva interattiva con la progettazione delle regole di sicurezza. Per ulteriori informazioni, consulta Convalida rapida delle regole di sicurezza Firebase .