预期和实际匹配但测试失败

Expected and actual matching but test is failing

使用 rest-assured 调用基础 rest 服务:

  given().get(baseUrl + "/base/")
                .then()
                .statusCode(200)
                .body("size()", is(2))
                .body("meanPerDay", equalTo(1.5))

returns :

java.lang.AssertionError: 1 expectation failed.
JSON path meanPerDay doesn't match.
Expected: <1.5>
  Actual: 1.5

baseUrl + "/base/"的有效载荷是:

{
    "meanPerDay": 1.5,
    "stdPerDay": 0.5
}

如果我将 .body("meanPerDay", equalTo(1.5)) 替换为 .body("meanPerDay", equalTo("1.5"))

失败是:

java.lang.AssertionError: 1 expectation failed.
JSON path meanPerDay doesn't match.
Expected: 1.5
  Actual: 1.5

我没有正确访问 meanPerDay 属性?

测试正在查找属性值,因为 Expected 的值为 1.5?

以下数字为浮点数

{
    "meanPerDay": 1.5,
    "stdPerDay": 0.5
}

,然而,下面的测试是与“double”进行比较:

 .body("meanPerDay", equalTo(1.5))

所以,你可以试试这个:

 .body("meanPerDay", equalTo(1.5f))