Начните работу с 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-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-2019)

34.69.234.64/29 (добавлен 11-2019)

34.73.34.72/29 (добавлен 11-2019)

34.73.178.72/29 (добавлен 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