Виртуальные устройства в 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.

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

Перед запуском команды необходимо закрыть все экземпляры Cuttlefish. ATS автоматически запускает и выключает виртуальные устройства во время цикла тестирования. Существующие экземпляры Cuttlefish конфликтуют с экземплярами, управляемыми ATS.

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

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

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

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

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

Добавить действия с устройством

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

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

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

Установить тестовые ресурсы

Виртуальным устройствам Cuttlefish требуются три тестовых ресурса: инструменты виртуальной машины, образы и облако . В типичной сборке 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. Результаты тестового запуска