断言错误:JUnit 测试中没有 JSON 路径的值
2022-09-04 01:44:22
我写了一个测试,它之前成功了,但现在我得到一个断言错误:JSON Path没有值。
@Test
public void testCreate() throws Exception {
Wine wine = new Wine();
wine.setName("Bordeaux");
wine.setCost(BigDecimal.valueOf(10.55));
new Expectations() {
{
wineService.create((WineDTO) any);
result = wine;
}
};
MockMultipartFile jsonFile = new MockMultipartFile("form", "", "application/json", "{\"name\":\"Bordeaux\", \"cost\": \"10.55\"}".getBytes());
this.webClient.perform(MockMvcRequestBuilders.fileUpload("/wine").file(jsonFile))
.andExpect(MockMvcResultMatchers.status().is(200))
.andExpect(MockMvcResultMatchers.jsonPath("$.name").value("Bordeaux"))
.andExpect(MockMvcResultMatchers.jsonPath("$.cost").value(10.55));
}
我得到的错误是:
java.lang.AssertionError: No value for JSON path: $.name, exception: No results path for $['name']
我不明白它没有得到什么或缺少什么。