Этот проект создан для автоматизированного тестирования API и UI, реализованного с использованием Java. Задание охватывает создание и выполнение тестов, чтобы продемонстрировать навыки автоматизации тестирования на реальных примерах.
Проект структурирован по двум направлениям:
- API Тесты: Реализованы с использованием
Rest Assured
иJUnit
. - UI Тесты: Написаны с помощью
Selenide
иJUnit
, с использованием паттернов Page Object и Page Factory.
- Java: 22.0.1 или выше
- Maven: 3.8.0 или выше
- Chrome: Убедитесь, что Google Chrome установлен (используется в UI тестах) и обновлен.
Warning
Убедитесь, что версия ChromeDriver соответствует установленной версии вашего браузера Chrome (если установлен вручную), иначе UI тесты не запустятся!
- Склонируйте репозиторий:
git clone https://github.com/suraifokkusu/javacode-test-task.git
- Перейдите в папку проекта:
cd javacode-test-task
- Установите зависимости и соберите проект с помощью Maven:
mvn clean install
src/test/java/apiTests
: API тесты с использованиемRest Assured
src/test/java/uiTests
: UI тесты с использованиемSelenide
и паттернов Page Objectsrc/test/java/uiTests/UiTestBase
: Базовый класс для настройки Selenide
- UserRegistrationTest: Проверка успешной регистрации и ошибки при отсутствии пароля
- UserListTest: Проверка, что все email пользователей заканчиваются на
@reqres.in
- DeleteUserTest: Проверка удаления пользователя и статус-код 204
- ShoppingTest: Полный тест, включающий логин, добавление товара в корзину, оформление заказа и проверку цены
- Использование XPath в соответствии с требованиями ТЗ
- Структура кода организована с использованием паттернов Page Object и Page Factory
- Перейдите в папку проекта и выполните команду:
mvn clean test
- Все тесты (API + UI) будут выполнены, и результаты отобразятся в консоли.
- Перейдите в папку проекта и выполните команду:
mvn -Dtest="apiTests.*" test
- Все API тесты будут выполнены, и результаты отобразятся в консоли.
- Убедитесь, что Google Chrome установлен и
ChromeDriver
настроен. - Запустите UI тесты:
mvn -Dtest="uiTests.*" test
- Тесты будут запускаться с использованием Selenide в видимом режиме.
Описание тестового задания
- Ссылка на API: https://reqres.in/
-
Протестировать регистрацию пользователя в системе:
- Успешная регистрация с валидными данными.
- Регистрация с ошибкой из-за отсутствия пароля, статус-код в ответе — 400.
-
Получить список пользователей страницы:
- Убедиться, что email пользователей имеет окончание
@reqres.in
.
- Убедиться, что email пользователей имеет окончание
-
Удалить второго пользователя:
- Проверить, что статус-код — 204.
- Ссылка на UI: https://www.demoblaze.com/
- Создать учетку вручную.
- Залогиниться на ресурс.
- Добавить любой товар в корзину.
- Перейти в корзину, сравнить цену в корзине с ценой на карточке товара.
- Оформить заказ, сравнить цену заказа с ценой на карточке товара.
- Использовать только XPath.
- Применить паттерны Page Object и Page Factory.
- Залить решенное задание на GitHub и предоставить ссылку.