在使用 Spring RESTDocs 时,有如下代码
1 | this.mockMvc |
运行正常
当把其中url替换成参数形式,改成如下代码时,
1 | this.mockMvc |
执行时出现错误:
java.lang.IllegalArgumentException: urlTemplate not found. If you are using MockMvc did you use RestDocumentationRequestBuilders to build the request?
这个提示也比较清晰,但对于不太了解 RESTDocs 的初学者,可能会迷惑一会,这是由于,静态方法有2个
1 | import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; |
上面这个是MockMvc里提供的,不支持URLTemplate这种形式,下面这个是RESTDocs里提供的,支持URLTemplate这种形式,需要用下面这个
1 | import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.get; |
替换掉import,倒入正确的get方法即可正常运行。