При работе с Spring Boot для создания микросервисов очень легко писать обширные и очень читаемые интеграционные тесты и макетировать запросы удаленных сервисов с помощью MockRestServiceServer
.
Есть ли способ использовать аналогичный подход для выполнения дополнительного теста интеграции на ZuulProxy
? То, что я хотел бы достичь, - это возможность издеваться над удаленными серверами, которые ZuulProxy
будет передавать и проверять, что все мои ZuulFitler
вели себя как ожидалось. Тем не менее, ZuulProxy
использует RestClient
из Netflix (устарел, казалось бы?), Который, естественно, не использует RestTemplate
, который может быть повторно настроен на MockRestServiceServer
, и я в настоящее время не могу найти хороший способ насмешек из удаленных служб для проксированных запросов.
У меня есть микросервис, который отвечает за обработку создания ключа сеанса API, а затем будет действовать аналогично шлюзу API. Пересылка осуществляется с помощью Zuul Proxy для лежащих в основе служб, а Zuul Filters обнаруживает, что ключ сеанса действителен или нет. Таким образом, интеграционный тест создаст действительный сеанс, а затем перейдет на поддельную конечную точку, например "интеграция/тест".
Задание того, что "интеграция/тест" является новой конечной точкой, возможно, установив свойство конфигурации на @WebIntegrationTest
, я могу успешно издеваться над всеми службами, которые обрабатываются с помощью RestTemplate
, но не для перенаправления Zuul.
Каков наилучший способ добиться издевательства в прямом целевом сервисе?