- Описание
- Использованный стек технологий
- Запуск тестов
- Сборка в Jenkins
- Пример Allure-отчета
- Интеграция с Allure TestOps
- Интеграция с Jira
- Уведомления в Telegram с использованием бота
- Примеры видео запуска тестов в Selenoid и Browserstack
В проекте реализованы UI, API и Mobile тесты для веб и мобильного приложения Todoist.
Автотесты написаны на Java
с использованием JUnit 5
и Gradle
.
Для UI-тестов использован фреймворк Selenide.
API тесты используют фреймворк RestAssured.
Автотесты для мобильных устройств написаны с помощью Selenide и Appium.
Запуск тестов можно осуществлять локально или в Selenoid и Browserstack.
Также реализована сборка в Jenkins
с формированием Allure-отчета и отправкой уведомления с результатами в Telegram
после завершения прогона.
Allure-отчет включает в себя:
- шаги выполнения тестов;
- логирование отправленных API запросов
- скриншот страницы в браузере в момент окончания автотеста;
- Page Source;
- логи браузерной консоли;
- видео выполнения автотеста.
Запуск web-тестов
gradle clean webTests -Denv=local
Запуск тестов на мобильное приложение в эмуляторе
gradle clean mobileTests -Denv=local -DdeviceHost=emulation
При необходимости можно переопределить параметры запуска
gradle clean webTests
-Denv=local
-Dbrowser=${BROWSER_NAME}
-DbrowserVersion=${BROWSER_VERSION}
-DbrowserSize=${BROWSER_SIZE}
-DbaseUrl=${BASE_URL}
Для запуска web-тестов в selenoid
gradle clean webTests -Denv=remote
Запуск тестов на мобильное приложение в Browserstack
gradle clean mobileTests -Denv=remote -DdeviceHost=browserstack
При необходимости также можно переопределить параметры запуска
gradle clean webTests -Denv=remote
-Dbrowser=${BROWSER_NAME}
-DbrowserVersion=${BROWSER_VERSION}
-DbrowserSize=${BROWSER_SIZE}
-DbaseUrl=${BASE_URL}
-DremoteUrl=${REMOTE_BROWSER_URL}
BROWSER_NAME
– браузер, в котором будут выполняться тесты. По-умолчанию -chrome
.BROWSER_VERSION
– версия браузера, в которой будут выполняться тесты. По-умолчанию -105.0
.BROWSER_SIZE
– размер окна браузера, в котором будут выполняться тесты.BASE_URL
– Url, по которому будет открываться тестируемое приложение. По-умолчанию -1920x1080
.REMOTE_BROWSER_URL
– адрес удаленного сервера, на котором будут запускаться тесты.
Тестовая сборка в Jenkins интегрирована с Allure TestOps. В Allure TestOps автоматически обновляется список тест-кейсов и результаты выполнения тестов.
Также полученные из автотестов тест-кейсы прикреплены к задаче в Jira.
После завершения сборки специальный бот, созданный в Telegram
, автоматически обрабатывает и отправляет сообщение с отчетом о прогоне.
При запуске тестов в remote-окружении к каждому тесту в отчете прилагается видео.
Пример видео из Selenoid
Пример видео из Browserstack