Skip to content

API-автотесты на Booking с использованием Allure Report, Jenkins, RestAssured, Junit5, Allure TestOps и Telegram Bot

Notifications You must be signed in to change notification settings

andreyzavrichko/qa_guru_gpt_api_project-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Проект restful-booker

🌸 Содержание

Используемые технологии

Описание проекта

Список проверок

Пример ручного выполнения тестов с помощью Postman

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

Запуск автотестов выполняется на сервере Jenkins

Отчёты о результатах сборок в Allure TestOps

Оповещения

Используемые технологии

This is an imageThis is an imageThis is an imageThis is an imageThis is an imageThis is an imageThis is an imageThis is an imageThis is an imageThis is an image

Описание проекта

Дипломный проект реализации автотестирования Rest Api.

В качестве объекта тестирования выбран сайт https://restful-booker.herokuapp.com/apidoc/index.html с открытым api.

This is an image

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

Особенности реализации тестового проекта

  • Модели получаемых данных описаны с помощью библиотеки Lombok.
  • Использованы спецификации для запросов и ответов.
  • Использованы шаблоны форматирования логов запросов.
  • Использованы кастомные шаблоны запросов и ответов для отчета Allure.
  • Реализован полный CRUD с подготовкой тестовых данных, а так же полной очисткой после теста.

Список проверок, реализованных в автотестах

  • Проверка получения токена несуществующим пользователем
  • Проверка получения токена без username
  • Проверка успешного получения токена
  • Проверка получения токена без password
  • Проверка доступности сервиса
  • Попытка получения несуществующего бронирования (должен быть 404)
  • Получение бронирований по диапазону дат (ожидается пустой список)
  • Получение информации о конкретном бронировании
  • Создание бронирования
  • Создание бронирования - без полезной нагрузки
  • Получение бронирований по диапазону дат (должны быть результаты)
  • Создание бронирования - без totalPrice
  • Создание бронирования - без lastname
  • Создание бронирования - без firstname
  • Обновление бронирования
  • Удаление бронирования

Пример ручного выполнения тестов с помощью Postman

This is an image

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

  • postman - коллекция со всеми запросами
  • helpers - подключение кастомных шаблонов для Allure Report и client для CRUD
  • models - модели данных для тестов
  • spec - спецификации, необходимые для тестов
  • resources - кастомные шаблоны для Allure Report и настройка многопоточного запуска

This is an image

Пример запуска из командной строки

gradle clean test

Запуск автотестов выполняется на сервере Jenkins

Ссылка на проект в Jenkins

This is an image

Для запуска тестов необходимо выбрать пункт "Собрать сейчас"

Отчёты о результатах сборок, списки тесткейсов, аналитические dashboards хранятся в Allure TestOps

Сссылка на проект в AllureTestOps (запрос доступа admin@qa.guru)

Итоговые dashboard по результатам сборок

This is an image

Список результата выполнения тест-кейсов в Allure TestOps

This is an image

Пример автоматически сгенерированными тест-кейсами в Allure TestOps

This is an image

Пример выполнения тестов в Allure TestOps

This is an image

Итоговые dashboard в Allure Report

This is an image

Список тест-кейсов в Allure Report

This is an image

Графики Dashboards в Allure Report

This is an image

Графики Dashboards в Allure Report

This is an image

Настроено автоматическое оповещение о результатах сборки Jenkins в Telegram-бот

This is an image

❤️ qa.guru
💙 t.me/qa_automation

About

API-автотесты на Booking с использованием Allure Report, Jenkins, RestAssured, Junit5, Allure TestOps и Telegram Bot

Topics

Resources

Stars

Watchers

Forks