20. Мобильная автоматизация #2. Разрабатываем автотесты с эмулятором Android устройства - qa-guru/knowledge-base GitHub Wiki
Установка Appium
Appium — кроссплатформенный фреймворк для автоматизации мобильных приложений как под управлением Android, так и под iOS. Appium бесплатный и распространяется с открытым исходным кодом. Работа фреймворка схожа с принципами работы Selenium WebDriver. Appium также получает HTTP-запросы в виде JSON и преобразует их в зависимости конкретной платформы.
Самый простой способ получить Appium — установить Appium Desktop. Для этого следует перейти на страницу релизов фреймворка в GitHub и скачать установщик под актуальную операционную систему.
Перед первым запуском необходимо перейти в меню «Edit Configuration» и указать путь до JDK и Android SDK. Инструкция по установке JDK доступна по ссылке.
Android SDK устанавливается автоматически вместе с Android Studio. Если вы уже устанавливали какую-либо IDE от JetBrains, то на компьютере должен быть JetBrains ToolBox. Необходимо открыть его, выбрать в меню Android Studio и установить. Если JetBrains ToolBox нет, то Android Studio можно скачать с сайта разработчика.
Android Studio
Android Studio — среда разработки приложений под Android и мобильную экосистему на базе Android. Менеджер SDK позволяет устанавливать SDK под разные версии Android и различные эмуляторы мобильных устройств. По умолчанию уже установлен SDK для Android 10 и эмулятор Pixel 4 XL.
Создание устройства
Для создания нового устройства необходимо перейти в меню «Device Manager» и выбрать опцию «Create Device». В открывшемся окне необходимо выбрать модель устройства, его параметры и далее сохранить выбор. После этого можно будет запускать эмуляцию устройства.
Appium Inspector
Appium Inspector — инспектор элементов интерфейса мобильных приложений, работающий на базе Appium Server. Для установки необходимо перейти страницу GitHub проекта, открыть вкладку «Релизы» и скачать последнюю версию установщика для актуальной операционной системы. После скачивания следует открыть файл и пройти шаги установки.
При настройке проекта в Appium Inspector необходимо передать параметры:
- Remote Host — тот же, что в Appium Server;
- Remote Port — тот же, что в Appium Server;
- Remote Path —
/wd/hub
; - Desired Capabilities — параметры проекта.
Appium Inspector работает также, как инспектор в браузере. С помощью мышки можно выбирать элементы, получать их ID и другие параметры. Эти данные можно использовать для автоматизации тестов. Также важно учесть, что Appium Selector не обновляет состояния приложения самостоятельно. Поэтому после манипуляций в эмуляторе необходимо нажимать кнопку «Refresh Source & Screenshot».
Запуск теста
Готовые тесты можно запускать прямо из PyCharm. При этом в эмуляторе можно мониторит прохождения теста в реальном времени. Мобильные тесты отличаются от браузерных только системой, в которой тесты воспроизводятся.
Как запускать тесты на физических устройствах
Android Debug Bridge (ADB) позволяет запускать тесты не на эмуляторе, а на реальном физическом устройстве. Подключать смартфон можно с помощью USB-кабеля или Wi-Fi. Ожидаемо, что быстрее и стабильнее работает соединение через USB-кабель.
Важно отметить, что перед настройкой Android Debug Bridge необходимо убедиться, что на машине уже стоит Android Studio, Appium Server и Appium Selector.
Подготовка устройства
- На смартфоне необходимо перейти в настройки, открыть пункт параметров для разработчиков и активировать функцию «Отладка по USB»;
- После этого надо подготовить компьютер, чтобы он обнаружил подключенное устройство:
- macOS: дополнительные настройки на требуются;
- Chrome OS: дополнительные настройки на требуются;
- Windows: при необходимости следует установить драйвер для OEM-устройств.
Подключение через USB
После выполнения предварительных шагов можно подключить смартфон к компьютеру через USB. При запуске тестов тесты будут запускаться на физическом устройстве, а не эмуляторе.
Чтобы убедиться, что компьютер обнаружил смартфон, следует выполнить команду adb devices
. В списке должно появиться имя устройства.