Skip to content

Latest commit

 

History

History
60 lines (42 loc) · 2.24 KB

README.md

File metadata and controls

60 lines (42 loc) · 2.24 KB

Технологии, использованные для тестирования

Что сделано в проекте

1. JUnit5 Extensions

В рамках проекта расширена функциональность JUnit с помощью кастомных Extensions имплементирующих интерфейсы ParameterResolver, ArgumentConverter, BeforeEachCallback, AfterEachCallback и др. классов callback.

Custom Extensions решают следующие задачи:

  • Подготовка тестовых данных и подстановка их в параметры теста
  • Логин через API для UI тестов
  • Конвертирование для работы с DTO
  • Выполнение скриншота при падении теста
package guru.qa.niffler.jupiter.*;

2. Работа с базой данных

Управление данными в БД реализовано 3 разными способами:

  • JDBC
  • Spring JDBC
  • Hibernate (JPA)
package guru.qa.niffler.db.*;

3. Работа с API

  • Интерцепторы для реализации API логирования
package guru.qa.niffler.api.interceptor.*;

4. Моки и стабы

  • Mockito используется в классе guru.qa.niffler.service.GrpcCurrencyServiceTest для unit тестирования gRPC сервиса
  • Wiremock используется для мокирования веб-сервисов, пример реализован в ветке wiremock в классе guru.qa.niffler.tests.uitests

5. Тестирование gRPC сервиса

guru.qa.niffler.tests.grpc.*