Google 致力于为黑人社区推动种族平等。查看具体举措

Начните тестирование Android с помощью Firebase Test Lab

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

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

Ключевые идеи

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

Устройства × Выполнения тестов = Матрица тестов

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

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

Доступные типы тестов

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

  • Контрольно - измерительные приборы или испытания инструментального единицы измерения: тест вы написали с помощью Эспресса или UI Automator 2.0 рамки. С помощью этого теста вы можете сделать явные утверждения о состоянии вашего приложения , чтобы убедиться в правильности функционирования с помощью AndroidJUnitRunnerAPIs .

  • Тест Robo: автоматизированный тест , который анализирует пользовательский интерфейс вашего приложения , а затем исследует его методично путем имитации действий пользователя, без необходимости писать код. Посещение О Robo тестирует для получения дополнительной информации.

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

    • Напишите тесты для вашего игрового движка

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

    • Необязательно создавать несколько петель для запуска в одном выполнении теста (визит О Game Loop тестов , чтобы узнать больше). Вы также можете организовать циклы с помощью меток, чтобы вы могли отслеживать их и повторно запускать определенные циклы.

    См Выполнить тест Game Loop для получения инструкций о запуске этого теста с Lab Test.

Инструменты для запуска теста

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

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

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

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

Вы также можете бесплатно протестировать свое приложение с помощью Test Lab, когда загружаете и публикуете APK-файлы приложения в Play Store, используя альфа- или бета-канал. Для получения дополнительной информации см Используйте отчеты предзапуска для выявления проблем и испытаний Robo .

Шаг 2: Выберите устройство тестирования

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

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

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

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

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

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

При запуске теста из Android Studio , вы можете также просмотреть результаты тестирования внутри среды разработки.

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

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

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


Сервисы Test Lab и Google Play

Устройства Test Lab обычно работают на последней версии SDK сервисов Google Play, но некоторым может потребоваться несколько дней для обновления после выпуска новой версии SDK. Обратите внимание, что вы можете столкнуться с проблемами совместимости с некоторыми устройствами.

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

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