Skip to content

arb-cs/trello-tests

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Проект автоматизации тестирования Trello.

Содержание:

  • Технологии и инструменты используемые для тестирования данного проекта.
  • Реализованные проверки:
    • Тесты пользовательского интерфейса (WEB);
    • Тесты прикладного программного интерфейса (API).
  • Способы запуска авто-тестов:
    • Локальный запуск;
    • Удаленный запуск;
    • Параметры для запуска тестов в Jenkins.
  • Визуализация.

Технологии и инструменты используемые для тестирования данного проекта.

IDEA logo. Java programming language logo. Gradle logo. jUnit5 logo. Selenide logo. Rest-Assured logo. Github logo. Allure report logo. Allure TestOps logo. Jenkins logo. Selenoid logo. Telegram logo.

Автоматизация тестовых сценариев выполнена с помощью языка программирования Java. В качестве системы сборки используется Gradle, а в качестве фреймворка для тестирования JUnit5.

Для автоматизации графического (пользовательского) интерфейса используется библиотека Selenide, а для проверки API — REST-assured.

Для предоставления отчетности о выполнении тестов использован инструмент — Allure-Report. Отчет состоит из следующих элементов:

  • Шаги;
  • Снимок экрана для последнего шага теста;
  • Видео выполнения;
  • Исходный код страницы;
  • Логи консоли браузера.

Дополнительным инструментом уведомления о прохождении тестов выступает telegram bot отправляющий отчет в специально созданный для этого канал.

Указанные выше инструменты позволяют не только предоставить отчетность менеджерам, но и в случае проблем быстрее позволит разобраться в причине падений тестов.

Удаленный запуск WEB тестов осуществляется с помощью Selenoid, который представляет собой ферму браузеров, а системой CI/CD выступает — Jenkins.

Реализация тестов.

Тесты API:

Выполнена проверка методов на предмет того, что они выполняют свою бизнес-функцию (В том числе, проверка значений определенных полей в теле ответа). Помимо этого, конечно, есть проверки статусов кода. Также, в некоторых тестах проверяется соблюдение контракта.

Тесты WEB:

Есть тесты проверяющие аутентификацию пользователя, включая негативные сценарии. Дополнительно, есть сценарии проверяющие основные пользовательские действия с базовыми сущностями Trello. К примеру, создание досок, списков, карточек и прочее.

Запуск авто-тестов.

Все команды необходимо выполнять в эмуляторе терминала (консоль).

Локальный запуск авто-тестов.

API:

gradle clean api_tests -Denv=local

UI:

gradle clean ui_tests -Denv=local

Удаленный запуск авто-тестов.

API:

gradle clean api_tests

UI:

gradle clean ui_tests

Запуск тестов из Jenkins:

clean
${TASK}
-DbaseUrl=${BASE_URL}
-DbaseURI=${BASE_URI}
-Dremote=https://${SELENOID_USER}:${SELENOID_PASSWORD}@${REMOTE}/wd/hub
-Dbrowser=${BROWSER}
-DbrowserVersion=${VERSION}
-DbrowserSize=${BROWSER_SIZE}

baseUrl — Адрес стенда для UI тестов.

baseURI — Адрес стенда для API тестов.

remote — Адрес на котором развернут Selenoid (для удаленного выполнения UI тестов).

browser — Имя браузера.

browserVersion — Версия браузера.

browserSize — Размер окна браузера.

Визуализация.

Запуск тестов в Jenkins:

Run a freestyle pipeline in Jenkins.

Отчеты в Allure Report:

Главная страница отчета:

Allure report.

Страница набора тестов.

API:

Allure report.

UI:

Allure report.

Пример отправляемого отчета в telegram:

Telegram notifications.

Видео выполнения теста в Selenoid:

A video of a test that is being executed on Selenoid.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published