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

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

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

  • Более быстрое выполнение тестов.

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

  • Графический процессор с поддержкой ускорения графики

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

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

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

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

Посмотреть поддерживаемые модели и 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 , как использовать Test Lab для Android с системами непрерывной интеграции…

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

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

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

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

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

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

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

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

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

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

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