Я не уверен, правильно ли использовать spring-cloud-contract для целей, которые я упомянул в заголовке, но я хочу понять, как это использовать в таком сценарии.
Мы обновляем наши интеграционные тесты для использования Spring Cloud Contract.Что касается новых функций, мы следуем документации по созданию заглушек из YAML / Groovy, а затем используем их на стороне потребителя вместе с Spring-Cloud-Starter-Contract-Stub-Runner.
Меня беспокоит заглушки, которые былиуже написано и используется.Мы не хотим тратить время на переписывание их в Groovy / YAML для создания Spring Cloud Contract для создания заглушек, поскольку у нас уже есть заглушки.Существующая конфигурация теста выглядит следующим образом:
@SpringBootTest(
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
classes = Application.class
)
@AutoConfigureWireMock(port = 8989, stubs = "classpath*:**/stubs/mappings/**/*.json", files = "classpath*:**/stubs")
class MyClientIT { ... }
Когда дело доходит до изменения этого теста на использование spring-cloud-contract , я застрял в том, как настроить стаб-бегун:
@SpringBootTest(
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
classes = Application.class
)
@AutoConfigureMockMvc
@AutoConfigureStubRunner(???)
public class MyNewClientIT {...}
Можно и рекомендуется ли использовать Spring Cloud Contract для такого случая?И если да, то как мы можем сделать заглушку, чтобы видеть локально сохраненные (а не хранящиеся как артефакт локально или удаленно) заглушки?
Спасибо ...