Citrus Framework - Как выполнять комплексные интеграционные тесты для нескольких участников - PullRequest
1 голос
/ 18 февраля 2020

Я работал с Citrus Framework для написания интеграционных тестов для приложений, состоящих из нескольких взаимодействующих сервисов Spring Boot. Службы взаимодействуют через HTTP-вызовы REST.

Я нахожусь в точке, где мне нужно написать тест, который будет выполнять сквозное интеграционное тестирование в мультисервисном приложении.

Сценарий приложения выглядит следующим образом:

A master служба, которая вызывается из клиента через вызов POST. Мастер вызывает две работника услуги, в последовательности - это нельзя сделать параллельно через вызовы POST. Мастер ожидает ответа от каждого работника. Как только процесс завершен, мастер возвращает ответ о завершении клиенту, который запустил весь процесс.

Я написал тесты Citrus для всех трех этих служб, и в случае мастера есть тест действия, которые по сути издеваются над двумя рабочими службами, диктуя, что они должны получить и ответить. Чтобы заставить его работать правильно, потребовалось некоторое время и усилия.

Теперь я хочу написать тест Citrus, который позволит тестировать процесс от начала до конца sh с всеми сервисов реальных и не поддельных. Я думаю, что этот тест будет похож на основной интеграционный тест, за исключением того, что рабочие больше не будут насмехаться.

Я не знаю, как это сделать с помощью Citrus. В руководстве пользователя есть раздел (https://citrusframework.org/citrus/reference/2.8.0/html/index.html#test -actors ), в котором, как кажется, это рассматривается, но он довольно короткий, и я не вижу, как это происходит на самом деле. Как «настоящие» актеры «подключены»? Как они настроены и запущены / остановлены? Кроме того, в этом разделе приведены примеры только в XML, примеров DSL Java нет.

Этот вопрос выходит за рамки только Citrus? Нужно ли задействовать более широкий набор персонажей, например, плагин maven или maven?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...