У меня есть проект Android, в котором я хочу запустить инструментальные тесты в GCP Gitlab-runner. У меня включена виртуализация для этого бегуна. Я установил Android SDK tools, создал avd на основе «пиксельного» устройства, запустил эмулятор, используя этот avd. Моя команда avd create (где EMULATOR_IMAGE - системные изображения; android -30; google_apis; x86): echo n | avdmanager --verbose create avd -n Pixel --device "pixel" -k "${EMULATOR_IMAGE}" --abi "x86" -f
.
Моя команда запуска эмулятора: emulator -avd Pixel -no-window -no-audio -no-boot-anim -dns-server 8.8.8.8 &
Убедившись, что эмулятор запущен, я Я даю свою команду gradle для запуска инструментальных тестов. Я вижу сообщение в журнале: Starting 119 tests on Pixel(AVD) - 11
Через несколько секунд я вижу следующее сообщение:
Session terminated, terminating shell... ...terminated.
Если я вижу отчет о неудачных тестах, я вижу следующее ошибка: com.android.ddmlib.TimeoutException: executeRemoteCommand interrupted with immediate timeout via interruption.
Как лучше всего подойти к этой проблеме? Как я могу проверить, почему тесты не проходят? Помогает ли предоставление DNS от Google эмулятору без проблем подключаться к inte rnet? Есть ли хороший способ проверить, подключен ли эмулятор (я не могу вносить существенные изменения в код, поскольку я в DevOps, а не разработчик)?