Skip to content

NMako69/Sprint7

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

🛴 Scooter API Automation Project — Sprint 7

Java JUnit4 RestAssured Allure

Проект по автоматизации тестирования API учебного сервиса Яндекс.Самокат. Реализован в рамках финального задания 7-го спринта курса по автоматизации тестирования на Java.


💻 Технологический стек

Технология Назначение Версия
Java Язык программирования 11
JUnit 4 Фреймворк для тестирования 4.13.2
RestAssured Работа с HTTP-запросами 4.4.0
Allure Генерация отчетов о тестировании 2.24.0
Lombok Сокращение шаблонного кода (POJO) 1.18.30
Java Faker Генерация случайных тестовых данных 1.0.2

📁 Структура проекта

Sprint_7
├── src
│   ├── main/java
│   │   ├── base            # Базовая настройка спецификаций (BaseMethod)
│   │   ├── client          # API-клиенты (CourierClient, OrderClient)
│   │   └── model           # POJO-модели и Генератор данных (CourierGenerator)
│   └── test/java
│       ├── courier         # Тесты создания и логина курьера
│       └── order           # Тесты создания и получения списка заказов
├── target/allure-report    # Сгенерированный статический отчет Allure
├── pom.xml                 # Зависимости и настройки сборки Maven
└── README.md               # Описание проекта

✅ Реализованное тестовое покрытие

🚚 Курьер (Courier API)

  • Создание курьера:
    • Успешное создание с валидными данными.
    • Запрет создания дубликатов (ошибка 409).
    • Валидация обязательных полей (логин, пароль).
  • Логин курьера:
    • Успешная авторизация и получение ID.
    • Обработка неверных учетных данных и несуществующих пользователей.
  • Очистка данных: Автоматическое удаление созданных курьеров в методе @After.

🛴 Заказы (Orders API)

  • Создание заказа (Parameterized):
    • Проверка выбора цветов: BLACK, GREY, оба цвета, отсутствие цвета.
  • Список заказов:
    • Проверка получения JSON-ответа со списком всех заказов.

▶️ Запуск проекта

1. Запуск всех автотестов:

mvn clean test

🧠 Особенности реализации

  • Архитектура Client-Server: Вся логика запросов вынесена в классы-клиенты, что делает тесты читаемыми и легкими в поддержке.
  • BaseMethod: Использование общего базового класса для настройки RequestSpecification и логирования всех запросов/ответов.
  • ValidatableResponse: Использование цепочек проверок в клиентах для сокращения кода тестов.
  • Allure Steps: Шаги тестов обернуты в аннотации @Step для детальной визуализации в отчетах.
  • Изоляция данных: Реализовано автоматическое удаление тестовых сущностей по окончании каждого теста.

Проект выполнил: Nikita Makoveev

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors