Skip to content

A test automation project for service Todoist (Web, API and mobile tests)

Notifications You must be signed in to change notification settings

firerinka/TodoistAutotests

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Проект по автоматизации тестирования приложения Todoist

📌 Содержание:

📖 Описание

В проекте реализованы 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-отчета

Overview

Результат выполнения теста

Интеграция с Allure TestOps

Тестовая сборка в Jenkins интегрирована с Allure TestOps. В Allure TestOps автоматически обновляется список тест-кейсов и результаты выполнения тестов.

Интеграция с Jira

Также полученные из автотестов тест-кейсы прикреплены к задаче в Jira.

Уведомления в Telegram с использованием бота

После завершения сборки специальный бот, созданный в Telegram, автоматически обрабатывает и отправляет сообщение с отчетом о прогоне.

Примеры видео запуска тестов в Selenoid и Browserstack

При запуске тестов в remote-окружении к каждому тесту в отчете прилагается видео.

Пример видео из Selenoid

Пример видео из Browserstack

About

A test automation project for service Todoist (Web, API and mobile tests)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published