Запуск тестов
Инструкция для запуска тестов основывается на примере UI Component Gallery Test Example.
Перед запуском тестов следует настроить эмулятор или устройство.
Подготовка тестового окружения
-
Установить зависимости в виртуальное окружение:
uv syncВ файле конфигурации проекта описаны требования к версии Python:
requires-python = ">=3.10, <3.11"Если в системе отсутствует интерпретатор Python нужной версии, то перед установкой зависимостей uv скачает и установит требуемую версию Python.
-
Проверить корректность версий:
uv tree Resolved 11 packages in 0.77ms uicomponentgallerytestexample v0.1.0 ├── appium-python-client v0.36 │ └── selenium v3.141.0 │ └── urllib3 v1.26.16 └── pytest v8.3.5 ├── exceptiongroup v1.2.2 ├── iniconfig v2.1.0 ├── packaging v24.2 ├── pluggy v1.5.0 └── tomli v2.2.1
Внимание: в файле pyproject.toml не случайно указаны не самые последние версии
appium-python-client и его зависимостей selenium и urllib3.
Текущая версия docker-образа hub.omp.ru/public/appium-aurora:2.0.6 корректно работает только
с таким сочетанием версий этих компонентов.
Если обновить selenium до последней актуальной версии 4, то это нарушит совместимость
и приведёт к потере работоспособности кода.
По этой же причине файл uv.lock был включён в индекс системы отслеживания версий Git.
Запуск автотестов
Для корректной инициализации драйвера в Appium-сервер необходимо передать IP-адрес
устройства/эмулятора, на котором будут запускаться автотесты.
Это можно реализовать путём передачи пользовательского параметра
(например, можно назвать его --device-ip-address) в команду запуска pytest.
Запустить все тесты в директории src/tests можно следующим образом:
uv run -- pytest --device-ip-address 192.168.56.37