我尝试使用Rest Assured测试API。当我检查双值时,会出现AssertionError。
检查double的代码:
given().body(getTest()).contentType("application/json\r\n").
when()
.port(port)
.basePath("/fff/test")
.post("insert")
.then()
.assertThat()
.statusCode(200)
.body("versie", equalTo(11.0));
这是输出:
java.lang.AssertionError: 1 expectation failed.
JSON path versie doesn't match.
Expected: <11.0>
Actual: 11.0
当我将.body更改为:
时.body("versie", equalTo(""+11.0));
输出结果为:
java.lang.AssertionError: 1 expectation failed.
JSON path versie doesn't match.
Expected: 11.0
Actual: 11.0
有谁知道如何解决这个问题?因为我真的不知道如何解决这个问题。
修改
JSON:
{
"id": 1,
"naam": "Test X",
"versie": 11.0
}
答案 0 :(得分:11)
.body("versie", equalTo(11.0f));
这对我有用。
答案基于@StanislavL的评论。
答案 1 :(得分:0)
尝试将(float)强制转换为equalTo-.body(“ value”,equalTo((float)12.9)