在没有引入spring cloud合约的情况下,我自定义了restdocs的配置,如下所示
@Rule
public JUnitRestDocumentation restDocumentation = new JUnitRestDocumentation();
protected WebTestClient http;
@Autowired
private ApplicationContext context;
/**
* setup.
*/
@Before
public void before() {
this.http = WebTestClient.bindToApplicationContext(context)
.configureClient()
.baseUrl("http://theserver")
.filter(WebTestClientRestDocumentation
.documentationConfiguration(this.restDocumentation)
.operationPreprocessors()
.withRequestDefaults(prettyPrint())
.withResponseDefaults(prettyPrint())
)
.build();
}
然而,在使用spring restdocs和云契约的同时,我必须使用注释来启用rest docs和cloud contract,
@AutoConfigureRestDocs(uriHost = "theserver", uriPort = 80)
@AutoConfigureWebTestClient
public abstract class BaseTest {
有关如何在生成云合约存根时生成漂亮的打印文档的任何建议吗?
答案 0 :(得分:1)
您可以做的不是使用A_Impl
,而是使用API传递给@AutoConfigureRestDocs
WebTestClientRestDocumentation.documentationConfiguration(...)
行。这样,默认情况下您将开始生成WireMock片段,并且不会丢弃以前的所有配置。