Spring MVC 测试:如何向 andExpect 添加描述

Spring MVC Test: how to add description to andExpect

在一个测试例子中

@Test
public void aSampleTest() {
    this.mockMvc
      .perform(get("/ultimateQuestion"))
      .andExpect(jsonPath("$.meaningOfLife", is("42"));
}

...是否可以添加(失败的)测试描述,以便失败的测试具有人类可读的消息而不仅仅是

Expected: is "42"
   but was 24

我的意思是,类似于

assertTrue(boolean condition, String message)

相对于

assertTrue(boolean condition)

否,目前无法自定义失败"reason"。

它在 org.springframework.test.util.JsonPathExpectationsHelper.assertValue(String, Matcher<T>) 中被硬编码为 "JSON path \"" + this.expression + "\"",其中 this.expression 是您提供的 JsonPath 表达式(例如,您的示例中的 "$.meaningOfLife")。