我有一个方法,比如说
@PostMapping(value = "/vpos/notify", ...)
public Foo somethingJSON(Bar bar) throws Exception { ... }
我有一个测试单元进入另一个类似
的类@Test
public void shouldInvokesomethingJson() throws Exception {
//given
String jsonContent = TestDataFactory.createInputRestRequest("1.4", "VposRequest");
//when
mvc.perform(
post("(path)/vpos/notify")
.contentType(MediaType.APPLICATION_JSON)
.header(HttpHeaders.AUTHORIZATION, token)
.content(jsonContent)
)
//then
.andExpect(status().isOk())
.andDo(print());
}
尽管测试取得了成功,但我真的不能说它是否会进入方法...
我试图验证路径是否错误,但如果我插入其他内容,则说它无法找到要测试的方法。
我仍然不确定它是否会进入方法,遵循Postmapping注释,因为我已经在方法中插入了断点,但是当我运行" debug&#34 ;执行没有去那里。
仍然在日志中我得到了这个:
MockHttpServletRequest:
HTTP Method = POST
Request URI = .../vpos/notify
...
告诉我它正在嘲笑@PostMapping
造成这种奇怪行为的原因是什么?
答案 0 :(得分:0)
XD
还有另一种使用通用URI调用的方法,因为内容类型与我想要调用的方法不匹配,但是使用通用URI ...
啊,细节......