2

我正在尝试使用 Restassured 从列表 api 中获取记录的计数/总数。

请分享我们如何获得它的想法。

前任:

{
    "final list": [
        {
            "id": 123,
            "name": "sachin"
        },
        {
            "id": 234,
            "name": "sourav"
        }
    ]
}

我预计这里的总数为 2。请建议。

4

4 回答 4

8

我得到了我的问题的答案。

这是放心的代码

expect().body("final_list.findall.size()",equalTo(2)).when().get("/list.json);

谢谢

于 2013-06-11T06:34:34.317 回答
4

如果您希望final_list有 2 个元素,则可以使用hasSize()匹配器:

expect().body("final_list", hasSize(2)).when().get("/list.json);

我在 Matchers 类 Java 文档的匹配器列表中找到了这个:

http://hamcrest.org/JavaHamcrest/javadoc/1.3/org/hamcrest/Matchers.html#hasSize(org.hamcrest.Matcher)

于 2014-03-14T15:17:32.977 回答
2

哟可以做到以下几点:

jp = new JsonPath(response.asString());
String numFromsResponse = jp.get("final list.id.size()").toString();
于 2017-12-07T08:18:45.020 回答
-1

您可以使用:

var json = {
    "final list": [
        {
            "id": 123,
            "name": "sachin"
        },
        {
            "id": 234,
            "name": "sourav"
        }
    ]
}

接着

json["final list"].length
于 2013-06-10T09:37:00.270 回答