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

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

Установка зависимостей Cuttlefish

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

sudo modprobe -a kvm tun vhost_net vhost_vsock

Запуск Android Test Station с виртуальными устройствами

Чтобы включить виртуальные устройства, запустите:

mtt start --max_local_virtual_devices N

N — максимальное количество виртуальных устройств, которое может одновременно выделить ATS. Номер по умолчанию — 0.

Запуск теста с виртуальными устройствами

Выбор устройств

В списке устройств ATS отображает виртуальные устройства в качестве заполнителей вместо их фактических серийных номеров. Заполнители отображаются в формате HOSTNAME:local-virtual-device-ID . Состояния доступны или распределены . Заполнитель в состоянии « Доступно » указывает на то, что виртуальное устройство не работает и может быть выделено для теста.

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

Рисунок 1. Выбор виртуальных устройств

Добавление действий устройства

Если вы выберете хотя бы одно локальное виртуальное устройство, соответствующее действие устройства должно быть автоматически добавлено в список. Действие состоит из необходимых параметров TradeFed и тестовых ресурсов для создания виртуальных устройств.

Действия с виртуальными устройствами

Рисунок 2. Действия устройства для виртуальных устройств

Настройка тестовых ресурсов

Для виртуальных устройств Cuttlefish требуются три тестовых ресурса: инструменты виртуальной машины, образы и Acloud . В типичной сборке Cuttlefish (например, aosp_cf_x86_64_phone на ci.android.com ) инструменты виртуальной машины упакованы в cvd-host_package.tar.gz , а образы — в aosp_cf_x86_64_phone-img-*.zip . Бинарный файл Acloud встроен в ATS и совместим со всеми версиями Cuttlefish. URL-адрес загрузки двоичного файла Acloud по умолчанию необходимо изменить только в целях отладки.

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

Рисунок 3. Тестовые ресурсы для виртуальных устройств

Просмотр тестовых прогонов

Журналы устройства, включая kernel.log , host_log.txt и launcher.log , собираются в папке выходных файлов. Щелкните Просмотр выходных файлов , чтобы просмотреть их.

Результаты тестового прогона

Рисунок 4. Результаты тестового прогона