我是初次测试的新手,所以我想知道我们是否可以将mockMvc的结果作为Java Map获得?
@Test
public void readBookmarks() throws Exception {
mockMvc.perform(get("/" + userName + "/bookmarks"))
.andExpect(status().isOk())
.andExpect(content().contentType(contentType))
.andExpect(jsonPath("$", hasSize(2)))
.andExpect(jsonPath("$[0].id", is(this.bookmarkList.get(0).getId().intValue())))
.andExpect(jsonPath("$[0].uri", is("http://bookmark.com/1/" + userName)))
.andExpect(jsonPath("$[0].description", is("A description")))
.andExpect(jsonPath("$[1].id", is(this.bookmarkList.get(1).getId().intValue())))
.andExpect(jsonPath("$[1].uri", is("http://bookmark.com/2/" + userName)))
.andExpect(jsonPath("$[1].description", is("A description")));
}
在上面的示例中,如果对象具有许多属性,则单独断言对象的每个json属性可能会很困难。那么我可以维护预期结果的地图(或列表List<Map<String, Object>>
)并直接断言实际结果吗?