Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Введение в Firebase Local Emulator Suite

Firebase Local Emulator Suite - это набор продвинутых инструментов для разработчиков, желающих создавать и тестировать приложения локально с использованием Cloud Firestore, базы данных в реальном времени, облачных функций, Cloud Pub / Sub и хостинга Firebase. Локальная разработка с помощью Local Emulator Suite может хорошо подойти для ваших процессов прототипирования, разработки и непрерывной интеграции.

Добавление Firebase Local Emulator Suite в ваши рабочие процессы разработки.

Прежде чем вы начнете

Перед изучением Firebase Local Emulator Suite, мы рекомендуем вам ориентироваться на продукты Firebase и модель разработки Firebase:

  • Прочтите разделы Начало работы с Firebase для вашей платформы и продуктов ( iOS , Android или Web ).
  • Загрузите готовое приложение для быстрого запуска на выбранную платформу, затем прочитайте и выполните код. Приложение быстрого запуска FriendlyEats - хороший выбор ( iOS , Android или Интернет ).

Что такое Firebase Local Emulator Suite?

Firebase Local Emulator Suite состоит из отдельных эмуляторов служб, созданных для точного воспроизведения поведения служб Firebase. Это означает, что вы можете подключить свое приложение непосредственно к этим эмуляторам для проведения интеграционного тестирования или контроля качества, не затрагивая производственные данные.

Например, вы можете подключить свое приложение к эмулятору Firestore для безопасного чтения и записи документов при тестировании. Эти записи могут запускать функции в эмуляторе Cloud Functions. Однако ваше приложение по-прежнему будет взаимодействовать с производственными службами Firebase, когда эмуляторы недоступны или не настроены.

Emulator Suite в ваших локальных рабочих процессах

Ваш прототип и рабочий процесс тестирования могут использовать Local Emulator Suite тремя способами:

  • Модульные тесты : используя Firebase Test SDK, вы можете написать модульные тесты в Node.js, используя программу запуска mocha. Test SDK предоставляет несколько удобных методов для загрузки правил безопасности, очистки локальной базы данных между тестами и управления синхронным взаимодействием с эмуляторами. Он отлично подходит для написания простых тестов для взаимодействия с базой данных, которые не зависят от логики вашего приложения.
  • Интеграционные тесты : каждый отдельный эмулятор продукта в Emulator Suite отвечает на вызовы SDK и REST API, как и производственные сервисы Firebase. Таким образом, вы можете использовать свои собственные инструменты тестирования для написания автономных интеграционных тестов, которые используют Local Emulator Suite в качестве бэкэнда.
  • Ручные тесты : вы можете подключить ваше работающее приложение к Local Emulator Suite, чтобы вручную протестировать ваше приложение Firebase, не рискуя производственными данными и не настраивая тестовый проект.

Какие функции и платформы Firebase поддерживаются?

Firebase Local Emulator Suite позволяет вам тестировать ваш код с нашими основными продуктами совместимым образом. Эмулятор Cloud Functions поддерживает функции HTTP, вызываемые функции и фоновые функции, запускаемые Cloud Firestore, Realtime Database и Cloud Pub / Sub; эмулятор Cloud Functions не поддерживает фоновые функции, запускаемые Auth или Cloud Storage for Firebase. Для эмуляторов Cloud Firestore и Realtime Database встроена эмуляция правил безопасности.

облако
Firestore
в режиме реального времени
База данных
облако
функции
облако
Pub / Sub
Android SDK н /
iOS SDK н /
Web SDK н /
Node.js Admin SDK н /

Другие инструменты для прототипирования и тестирования

Набор Emulator дополняется другими прототипами и инструментами для тестирования.

Инструменты тестирования облачных функций. Среда Firebase CLI предоставляет несколько способов создания прототипов и тестирования функций:

  • Эмулятор Cloud Functions, часть пакета Emulator. Этот эмулятор совместим с локальными данными, действующими данными и правилами безопасности в эмуляторе Firestore и / или эмуляторе базы данных реального времени.
  • Оболочка Cloud Functions, которая позволяет создавать и разрабатывать интерактивные итеративные функции. В оболочке используется эмулятор Cloud Functions с интерфейсом в стиле REPL для разработки. Интеграция с эмуляторами Firestore или Realtime Database не предусмотрена. Используя оболочку, вы макетируете данные и выполняете вызовы функций для имитации взаимодействия с продуктами, которые в настоящее время не поддерживаются Emulator Suite: Storage, PubSub, Analytics, Remote Config, Storage, Auth и Crashlytics.
  • Firebase Test SDK для облачных функций, Node.js с платформой mocha для разработки функций. По сути, Cloud Functions Test SDK обеспечивает автоматизацию поверх оболочки Cloud Functions.

Вы можете найти больше информации об оболочке Cloud Functions и Cloud Functions Test SDK в разделе Интерактивные функции тестирования и Unit-тестирование функций облака .

Инструменты тестирования правил безопасности. Emulator Suite является предпочтительным набором инструментов для тестирования правил безопасности. Тем не менее, вы также можете использовать:

  • Площадка для правил, часть консоли Firebase. Правила игровая площадка обеспечивает отличный интерактивный опыт работы с дизайном правил безопасности. Для получения дополнительной информации см. Быстрая проверка правил безопасности Firebase .