我正在使用MockMVC测试todo Controller :
mockMvc.perform(MockMvcRequestBuilders.get("/toDos/")
.with(user("user").password("password").roles("ADMIN"))
.content("{ \"saved_date\": \"2010-01-01\"}")
.accept(MediaType.APPLICATION_JSON_VALUE))
.andExpect((ResultMatcher) jsonPath("$.id").doesNotExist())
.andExpect(status().isOk())
.andExpect( content().contentType("application/json"));
}
我不断收到此错误:
java.lang.ClassCastException: org.springframework.test.web.client.match.JsonPathRequestMatchers$5 cannot be cast to org.springframework.test.web.servlet.ResultMatcher
我想删除对(ResultMatcher)的强制转换,但是不知道如何创建一个测试Id的ResultMatcher。有任何想法吗 ?
最佳答案
我想您要使用:
org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath
... 代替:
org.springframework.test.web.client.match.MockMvcResultMatchers.jsonPath
关于spring - 使用MockMVC将JsonPathRequestMatchers转换为ResultMatcher,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44719251/