Java pathParameters文档异常(找不到urlTemplate)
使用Java pathParameters文档异常(找不到urlTemplate),java,spring-restdocs,Java,Spring Restdocs,使用pathParameters记录URI路径参数时,如下所示 @Test public void documentGetRouteById() throws Exception { this.mockMvc.perform(get("/route/{id}", "FooBar")).andExpect(status().isOk()) .andDo(document("api-getRouteById", pathPara
pathParameters
记录URI路径参数时,如下所示
@Test
public void documentGetRouteById() throws Exception {
this.mockMvc.perform(get("/route/{id}", "FooBar")).andExpect(status().isOk())
.andDo(document("api-getRouteById",
pathParameters(parameterWithName("id").description("die Routen ID"))));
}
我得到以下的豁免
java.lang.IllegalArgumentException: urlTemplate not found. Did you use RestDocumentationRequestBuilders to build the request?
at org.springframework.util.Assert.notNull(Assert.java:112)
at org.springframework.restdocs.request.PathParametersSnippet.extractUrlTemplate(PathParametersSnippet.java:95)
at org.springframework.restdocs.request.PathParametersSnippet.extractActualParameters(PathParametersSnippet.java:82)
at org.springframework.restdocs.request.AbstractParametersSnippet.verifyParameterDescriptors(AbstractParametersSnippet.java:77)
at org.springframework.restdocs.request.AbstractParametersSnippet.createModel(AbstractParametersSnippet.java:65)
at org.springframework.restdocs.request.PathParametersSnippet.createModel(PathParametersSnippet.java:67)
at org.springframework.restdocs.snippet.TemplatedSnippet.document(TemplatedSnippet.java:64)
at org.springframework.restdocs.mockmvc.RestDocumentationResultHandler.handle(RestDocumentationResultHandler.java:101)
at org.springframework.test.web.servlet.MockMvc$1.andDo(MockMvc.java:158)
我很确定我做了测试设置,就像我解释的那样
我可能做错了什么
(Spring REST文档版本为1.0.0.BUILD-SNAPSHOT)异常消息正试图为您指明正确的方向: 找不到URL模板。您是否使用RestDocumentationRequestBuilders构建请求 您需要使用
RestDocumentationRequestBuilders
,以便SpringREST文档能够捕获URL并从中提取参数。这就是它所说的:
要使路径参数可用于文档,必须使用RestDocumentationRequestBuilders而不是MockMvcRequestBuilders上的方法之一生成请求
将
MockMvcRequestBuilders.get
的静态导入替换为restcumentationrequestbuilders.get
的静态导入应该可以解决这个问题。你说它都写下来了?你说得对!记录良好的模块。问题再次摆在监视器面前。