Java Spring:JUnit Hamcrest:期待集合
Java Spring: JUnit Hamcrest: Expecting Collection
我 运行 我的 Java Spring Web 应用程序中的集成测试套件,但是 运行 出现以下错误。
有一个项目值:id 的 {id 值},在响应中返回。
java.lang.AssrtionError: 1 expectation failed.
JSON path data.id doesn't match.
Expected: a collection containing "BUNDLE_A"
Actual: BUNDLE_A
IntegrationTest.java:
@Test
public void testBundle() throws Exception {
RestAssured.when()
.get("v1/bundles/{bundleId}", TEST_BUNDLE_ID)
.then()
.statusCode(HttpStatus.OK.value())
.body("data.id", hasItem(TEST_BUNDLE_ID))
.body("errorCode", nullValue());
}
将您的 hasItem
替换为 equalTo
:
@Test
public void testBundle() throws Exception {
RestAssured.when()
.get("v1/bundles/{bundleId}", TEST_BUNDLE_ID)
.then()
.statusCode(HttpStatus.OK.value())
.body("data.id", equalTo(TEST_BUNDLE_ID))
.body("errorCode", nullValue());
}
我 运行 我的 Java Spring Web 应用程序中的集成测试套件,但是 运行 出现以下错误。
有一个项目值:id 的 {id 值},在响应中返回。
java.lang.AssrtionError: 1 expectation failed.
JSON path data.id doesn't match.
Expected: a collection containing "BUNDLE_A"
Actual: BUNDLE_A
IntegrationTest.java:
@Test
public void testBundle() throws Exception {
RestAssured.when()
.get("v1/bundles/{bundleId}", TEST_BUNDLE_ID)
.then()
.statusCode(HttpStatus.OK.value())
.body("data.id", hasItem(TEST_BUNDLE_ID))
.body("errorCode", nullValue());
}
将您的 hasItem
替换为 equalTo
:
@Test
public void testBundle() throws Exception {
RestAssured.when()
.get("v1/bundles/{bundleId}", TEST_BUNDLE_ID)
.then()
.statusCode(HttpStatus.OK.value())
.body("data.id", equalTo(TEST_BUNDLE_ID))
.body("errorCode", nullValue());
}