Как автоматически протестировать Elasticsearch в стиле BBD на Java? - PullRequest
0 голосов
/ 18 июня 2019

Я пишу микросервис на Java с использованием Spring Boot 2.0, который, основываясь на некоторых входных данных, выполняет вызовы ElasticSearch. Чтобы добиться хорошего качества, мы ввели тесты компонентов (в данном случае под компонентом я имею в виду экземпляр микросервиса), который запускает все приложение (запускает контекст Spring) и в двух словах выглядит следующим образом:

Given XXX input data
When YYY request is sent to ElasticSearch 
Then service does ZZZ afterwards

Часть, с которой я борюсь, это "YYY запрос отправлен в Elasticsearch".

Обычно в таких случаях мы используем некоторую инфраструктуру для захвата запросов (например, WireMock) и помещаем утверждения в сам JSON. Есть ли лучший способ сделать это?

Я также сталкивался с ESTestCase, но на основе неинформативной документации, кажется, не соответствует нашим потребностям.

Чего я пытаюсь избежать, так это отделения клиента ES от тестов, что означает, что наш уровень изоляции тестов находится где-то в середине приложения.

...