➠ Пример ручного выполнения тестов с помощью Postman
➠ Запуск автотестов выполняется на сервере Jenkins
Дипломный проект реализации автотестирования Rest Api.
В качестве объекта тестирования выбран сайт https://petstore.swagger.io/ с открытым api.
Сайт позволяет получать информацию о питомцах, заказах и пользователях, а также создавать их.
- Модели данных описаны с помощью @dataclass.
- Использованы утилиты для загрузки и валидации Json схем
- Использована утилита для прикрепления Request URL, Response Body, cURL
- Использованы шаблоны форматирования логов запросов
- В тестах создаются тестовые данные и удаляются после прохождения теста
- Find by status Sold. Поиск по статусу Sold.
- Create Order. Создание заказа.
- Check Inventory. Проверка инвентаря.
- Find by status Null. Поиск по пустому статусу.
- Find by status Available. Поиск по статусу Available.
- Find order. Поиск заказа.
- Get empty User. Получение пустого пользователя.
- Create User. Создание пользователя.
- Create User with array. Создание пользователя с массивом.
- Get null User. Получение пользователя с null.
- Find by pet ID. Поиск питомца по ID.
- Create User with list. Создание пользователя со списком.
- Create pet. Создание питомца.
- Get User. Получение пользователя.
- Find by status Pending. Поиск по статусу Pending.
- api - клиент для отправки запросов
- data - модели для генерирования тестовых данных
- schemas - json схемы для валидации ответа
- tests - тесты, разбитые по категориям
- utils - валидация json схем, прикрепление логов и attach
- pytest.ini - конфигурационный файл
- requirements.txt - используемые в проекте библиотеки
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
pytest
Для запуска тестов необходимо выбрать пункт "Собрать сейчас"
Сссылка на проект в AllureTestOps (запрос доступа admin@qa.guru)