Firebase Local Emulator Suite est un ensemble d'outils avancés destinés aux développeurs qui souhaitent créer et tester des applications localement à l'aide de Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication, Firebase Hosting, Cloud Functions (bêta), Pub/Sub (bêta) et Firebase Extensions (bêta). Il fournit une interface utilisateur riche pour vous aider à démarrer et à créer des prototypes rapidement.
Le développement local avec la suite d'émulateurs locaux peut être adapté à vos workflows d'évaluation, de prototypage, de développement et d'intégration continue.
Avant de commencer
Avant d'explorer la suite d'émulateurs locaux Firebase, nous vous recommandons de vous familiariser avec les produits Firebase et le modèle de développement Firebase:
- Consultez les articles Premiers pas avec Firebase pour votre plate-forme et vos produits (Apple, Android ou Web).
- Téléchargez une application de démarrage rapide prête à l'exécution sur la plate-forme de votre choix, puis lisez et exécutez le code. L'application de démarrage rapide FriendlyEats est un bon choix (iOS, Android ou Web).
Qu'est-ce que Firebase Local Emulator Suite ?
La suite d'émulateurs locaux Firebase se compose d'émulateurs de services individuels conçus pour reproduire précisément le comportement des services Firebase. Cela signifie que vous pouvez connecter votre application directement à ces émulateurs pour effectuer des tests d'intégration ou de contrôle qualité sans toucher aux données de production.
Par exemple, vous pouvez connecter votre application à l'émulateur Cloud Firestore pour lire et écrire des documents en toute sécurité lors des tests. Ces écritures peuvent déclencher des fonctions dans l'émulateur Cloud Functions. Toutefois, votre application continuera de communiquer avec les services Firebase de production lorsque les émulateurs ne sont pas disponibles ou configurés.
Suite d'émulateurs dans vos workflows locaux
Votre workflow de prototypage et de test peut utiliser la suite d'émulateurs locaux de plusieurs manières:
- Tests unitaires: avec le SDK de test Firebase, vous pouvez écrire des tests unitaires en Node.js à l'aide de l'exécuteur de test Mocha. Le SDK de test fournit plusieurs méthodes pratiques pour charger les règles de sécurité, vider la base de données locale entre les tests et gérer l'interaction synchrone avec les émulateurs. Il est idéal pour écrire des tests simples pour les interactions de base de données qui ne dépendent pas de la logique de votre application.
- Tests d'intégration: chaque émulateur de produit de la suite d'émulateurs répond aux appels de SDK et d'API REST comme les services Firebase de production. Vous pouvez donc utiliser vos propres outils de test pour écrire des tests d'intégration autonomes qui utilisent Local Emulator Suite comme backend.
- Tests manuels: vous pouvez connecter votre application en cours d'exécution à Local Emulator Suite pour tester manuellement votre application Firebase, sans risquer de compromettre les données de production ni de configurer un projet de test.
- Évaluations des produits: vous pouvez installer et gérer Firebase Extensions dans un environnement local sécurisé, et mieux comprendre ses fonctionnalités tout en minimisant les coûts de facturation.
Quelles fonctionnalités et plates-formes Firebase sont compatibles ?
La suite d'émulateurs locaux Firebase vous permet de tester votre code avec nos produits principaux de manière interopérable. L'émulateur Cloud Functions est compatible avec les fonctions HTTP, les fonctions appelables et les fonctions d'arrière-plan déclenchées par Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication et Pub/Sub. Les émulateurs Cloud Firestore, Realtime Database et Cloud Storage for Firebase intègrent l'émulation Firebase Security Rules.
Cloud Firestore |
Base de données en temps réel |
Cloud Storage for Firebase |
Authentification | Cloud Functions |
Cloud Pub/Sub |
Extensions | |
---|---|---|---|---|---|---|---|
SDK Android | ![]() |
![]() |
![]() |
![]() |
![]() |
Non disponible | Non disponible |
SDK iOS | ![]() |
![]() |
![]() |
![]() |
![]() |
Non disponible | Non disponible |
SDK Web | ![]() |
![]() |
![]() |
![]() |
![]() |
Non disponible | Non disponible |
SDK Admin Node.js | ![]() |
![]() |
![]() |
![]() |
Non disponible | ![]() |
Non disponible |
Étapes suivantes
Commencez avec un tutoriel Local Emulator Suite qui vous montre comment effectuer un prototypage hors connexion d'une base de données et de Cloud Functions.
Découvrez comment installer et configurer Local Emulator Suite.
Autres outils de prototypage et de test
La suite d'émulateurs est complétée par d'autres outils de prototypage et de test.
Outils de test de Cloud Functions L'environnement de la CLI Firebase vous offre plusieurs façons de créer des prototypes et de tester des fonctions:
- L'émulateur Cloud Functions, qui fait partie de la suite d'émulateurs. Cet émulateur est interopérable avec les données en temps réel et les règles de sécurité locales dans l'émulateur Firestore et/ou l'émulateur Realtime Database.
- Le shell Cloud Functions, qui permet de prototyper et de développer des fonctions interactives et itératifs. Le shell utilise l'émulateur Cloud Functions avec une interface de type REPL pour le développement. Aucune intégration avec les émulateurs Cloud Firestore ou Realtime Database n'est fournie. À l'aide du shell, vous simulez des données et effectuez des appels de fonction pour simuler l'interaction avec des produits que Local Emulator Suite n'est pas compatible avec pour le moment: Analytics, Remote Config et Crashlytics.
- Le SDK de test Firebase pour Cloud Functions, un framework Node.js avec Mocha pour le développement de fonctions. En effet, le SDK de test Cloud Functions fournit une automatisation au-dessus du shell Cloud Functions.
Pour en savoir plus sur le shell Cloud Functions et le SDK de test Cloud Functions, consultez Tester des fonctions de manière interactive et Tests unitaires de Cloud Functions.
Outils de test des règles de sécurité La suite d'émulateurs est l'ensemble d'outils recommandé pour tester les règles de sécurité. Vous pouvez également utiliser:
- L'espace de test dédié aux règles, qui fait partie de la console Firebase. Le bac à sable des règles offre une excellente expérience interactive pour commencer à concevoir des règles de sécurité. Pour en savoir plus, consultez Valider rapidement les règles de sécurité Firebase.