Как начать тестирование с помощью виртуальных устройств Android

В этом документе описаны AVD для Test Lab, а также их преимущества и известные ограничения. Мы также даем рекомендации о том, как тестировать приложение на протяжении всего цикла разработки. Test Lab Виртуальные устройства Android похожи на виртуальные устройства Android для Android Studio, но оптимизированы для облачного тестирования, поэтому между ними есть некоторые различия.

Test Lab AVD с суффиксом .arm или (Arm) – это продвинутый эмулятор, который обеспечивает следующие преимущества:

  • Ускоренное выполнение тестов

  • Размеры и плотность экрана соответствуют виртуальным устройствам Android Studio.

  • Графический процессор поддерживает ускоренную обработку графики

В таблице ниже описаны преимущества использования виртуальных устройств.

Преимущества Описание Варианты использования
Высокая доступность При тестировании на виртуальных устройствах можно быстрее запускать тесты и получать результаты. Поскольку виртуальные устройства создаются по запросу, тестирование начинается почти сразу, что позволяет быстро проверить приложение. тестировать небольшие обновления приложения или выявлять ошибки в новой версии.
Более длительные периоды тестирования Виртуальные устройства поддерживают тестирование продолжительностью до 60 минут. Тестирование на физических устройствах ограничено 45 минутами на каждое устройство. Как проводить более длительные тестирования
снизить расходы; Стоимость использования виртуальных устройств составляет 1 долл. США в час за каждое устройство. Ежедневное тестирование с использованием систем непрерывной интеграции или перед регистрацией кода. Подробнее об уровнях использования, квотах и ценах на Test Lab…

Как тестировать приложения на виртуальных устройствах

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

Как посмотреть поддерживаемые модели и API

Чтобы посмотреть модели AVD и API, поддерживаемые Test Lab, выполните следующую команду:

gcloud firebase test android models list --filter=virtual

Рекомендации по тестированию приложения

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

Используйте эмулятор Android Studio или подключенное физическое устройство.

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

Используйте системы непрерывной интеграции при каждом изменении кода при работе над общими проектами

Если вы работаете над крупным проектом или участвуете в проектах, которые хранятся на GitHub или похожем сайте, рекомендуем использовать системы непрерывной интеграции (CI). Тестируйте приложения на виртуальных устройствах каждый раз, когда запускается система непрерывной интеграции, или перед каждым pull-запросом. Подробнее о том, как использовать Test Lab с системами непрерывной интеграции для Android, рассказывается в статье Использование Test Lab для Android с системами непрерывной интеграции.

Тестируйте приложение на физических устройствах с Test Lab перед выпуском крупных обновлений

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

Обновления виртуальных устройств

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

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

Известные ограничения

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

Функция Подробнее…
Двоичные интерфейсы приложений (ABI) Не все устройства поддерживают все ABI. Если вы разрабатываете приложение с помощью Android NDK, обязательно создайте код для ABI, поддерживаемых целевыми устройствами (см. раздел Доступные устройства в Test Lab). Подробнее об управлении ABI рассказывается в статье Android ABI.

Примечание. Если тест в матрице тестирования помечен как недействительный, это может быть связано с тем, что в приложении используется код, который не поддерживается ABI устройства.

Производительность графики Виртуальные устройства Nexus и Pixel используют программную отрисовку графики. Приложения с большим количеством графики могут работать медленнее. Если ваше приложение требует много ресурсов, используйте SmallPhone.arm, MediumPhone.arm или физические устройства.
Графические API OpenGL ES 3.x не поддерживается на устройствах с уровнем API ниже 29. Новые устройства не на 100% совместимы с API OpenGL/Vulkan, поэтому вы можете заметить небольшие различия в графике.
Приложение Google Play Приложение Google Play не поддерживается на виртуальных устройствах с архитектурой Arm.
Функции дополненной реальности Тестирование функций дополненной реальности (AR) не поддерживается на виртуальных устройствах.
Более ранние уровни API Test Lab Виртуальные устройства Arm не поддерживают уровни API ниже 26.

Дальнейшие действия