Начните работу с Firebase Test Lab для iOS

Firebase Test Lab позволяет вам качественно протестировать ваше приложение на различных устройствах и конфигурациях. В этом руководстве представлен обзор основных концепций Test Lab, предложений для iOS и инструкции о том, как начать тестирование.

Для получения информации о квотах Test Lab и тарифных планах см Usage, квоты и ценообразование .

Ключевые понятия и термины

При выполнении теста или набора тестов против устройств и конфигураций , которые вы выбрали, Lab Test запускает тест против вашего приложения в пакете, а затем отображает результаты в виде тестовой матрицы.

Устройства × количество тестов = матрица тестов

Устройство
Физическое или виртуальное устройство (только Android), на котором вы запускаете тест, например телефон, планшет или носимое устройство. Устройства в тестовой матрице идентифицируются по модели устройства, версии ОС, ориентации экрана и языковым настройкам (также известным как географические и языковые настройки).
Тест, выполнение теста
Тест (или набор тестовых случаев), который нужно запустить на устройстве. Вы можете запустить один тест на каждом устройстве или, при желании, разделить тест и запустить его тестовые сценарии на разных устройствах.
Тестовая матрица
Содержит статусы и результаты тестов для выполнения тестов. Если какое-либо выполнение теста в матрице завершается неудачно, вся матрица терпит неудачу.

Шаг 1: Подготовка теста для загрузки в лаборатории тестирования

Вы можете запустить следующие тесты с помощью Test Lab. Обратите внимание, что все типы тестов могут выполняться на физических устройствах максимум до 45 минут, и любое неперехваченное исключение приведет к сбою теста.

  • XCTest (включая XCUITests): тест блок вы написали с помощью XCTest рамки . Визит Создать XCTest инструкции по модификации XCTest для работы с Lab Test.

  • Игра Loop тест: тест А , который использует «демонстрационный режим» для имитации действий игроков в игровых приложениях. Это быстрый и масштабируемый способ убедиться, что ваша игра хорошо работает для пользователей. Когда вы решите запустить тест Game Loop, вы сможете:

    • Пишите тесты, встроенные в ваш игровой движок.

    • Избегайте написания одного и того же кода для разных пользовательских интерфейсов или сред тестирования.

    • При желании создайте несколько циклов для запуска в одном выполнении теста. Вы также можете организовать циклы, используя метки, чтобы вы могли отслеживать их и повторно запускать определенные циклы.

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

Шаг 2: Выберите инструмент для запуска теста

Вы можете выбрать следующие инструменты для запуска теста:

  • Firebase консоль позволяет загружать приложение и начать тестирование в любом месте. См теста с консолью Firebase для получения инструкций по использованию этого инструмента.

  • Интерфейс командной строки gcloud (CLI) позволяет запускать тесты из командной строки в интерактивном режиме , а также хорошо подходит для написания сценариев , как часть вашей автоматической сборки и тестирования процесса. См теста с CLI gcloud для получения инструкций по использованию этого инструмента.

  • Перед тестированием на реальных устройствах, запустить тест локально на тренажере , чтобы убедиться , что он ведет себя , как предполагалось. См тест на местном уровне для получения инструкций.

Шаг 3: Укажите тестирование устройств

С Test Lab вы можете запускать тесты своего приложения на самых разных устройствах и моделях iOS, размещенных в центре обработки данных Google. Чтобы узнать больше, см Доступные устройства.

Шаг 4: Результаты тестирования Обзора

Независимо от того, как вы инициируете свои тесты, все ваши результаты тестов управляются Test Lab и могут быть просмотрены в Интернете.

Резюме результата теста автоматически сохраняются и могут быть просмотрены в консоли Firebase. Он содержит наиболее важные данные для вашего теста, включая видеоролики для конкретных тестовых случаев, снимки экрана, количество тестов, которые прошли, не прошли или получили ненадежные результаты, и многое другое.

Необработанные результаты испытаний содержат тестовые журналы и деталь сбоя приложения, и автоматически сохраняются в ведре Google Cloud. Если вы указываете сегмент, вы несете ответственность за стоимость хранилища. Если вы не укажете сегмент, Test Lab бесплатно создаст его для вас.

Для получения более подробной информации см Анализ результатов Firebase Lab Test.

Очистка устройства

Google очень серьезно относится к безопасности данных вашего приложения. Мы следуем передовым отраслевым практикам по удалению данных приложений и сбросу системных настроек для физических устройств после каждого запуска теста, чтобы убедиться, что они готовы к запуску новых тестов. Для устройств, которые мы можем прошивать с помощью пользовательского образа восстановления, мы делаем еще один шаг, прошивая эти устройства между тестовыми запусками.

Для виртуальных устройств, используемых Test Lab, экземпляры устройств удаляются после их использования, поэтому при каждом выполнении теста используется новый экземпляр виртуального устройства.


Разрешение устройствам Test Lab доступа к частным внутренним серверам

Некоторым мобильным приложениям необходимо взаимодействовать с частными серверными службами для правильной работы во время тестирования. Если серверы Серверные защищены правилами брандмауэра, вы можете разрешить доступ для физических и виртуальных устройств тестовой лаборатории путем использования блоков IP - адресов ниже для открытых маршрутов через брандмауэр.

Мобильная реклама

Test Lab предоставляет масштабируемую инфраструктуру, которая автоматизирует тестирование приложений, и, к сожалению, эта возможность может быть использована вредоносными приложениями, предназначенными для получения мошеннического дохода от рекламы.

Чтобы смягчить эту проблему:

  • Если вы используете или работаете со сторонними поставщиками цифровой рекламы (например, рекламными сетями или платформами на стороне спроса), вам рекомендуется использовать тестовую рекламу, а не реальную рекламу во время разработки и тестирования приложения.

  • Если вы должны использовать реальные объявления в тесте, уведомляют цифровые провайдер рекламы вы работаете , чтобы отфильтровывать доходы и весь соответствующего трафик , генерируемый из лаборатории тестирования при помощи использования блоков IP -ов адреса ниже . Вам не нужно уведомлять поставщиков рекламы, принадлежащих Google; Test Lab позаботится об этом за вас.

IP-адреса, используемые устройствами Test Lab

Весь сетевой трафик , генерируемый устройствами испытательной лаборатории происходит из следующих блоков IP - адресов . Обратите внимание , что вы также можете получить доступ к этому списку с помощью gcloud beta firebase test ip-blocks list команды в CLI gcloud. Список периодически обновляется (в среднем раз в год).

Платформа и тип устройства Блокировка IP-адреса CIDR
Физические устройства Android и iOS

108.177.6.0/23

70.32.147.112/28 (добавлено 03.03.2020)

74.125.122.32/29 (добавлено 04.2020)

108.177.29.80/28 (добавлено 04.2020)

216.239.44.24/29 (добавлено 04.2020)

Виртуальные устройства Android

34.68.194.64/29 (добавлено 11.11.2019)

34.69.234.64/29 (добавлено 11.11.2019)

34.73.34.72/29 (добавлено 11.11.2019)

34.73.178.72/29 (добавлено 11.11.2019)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (добавлено 7 июля 2019 г.)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29