当前位置: 首页 > 知识库问答 >
问题:

请放心在 ASC/DESC 订单中做出响应

劳昊明
2023-03-14

有什么方法可以按顺序验证响应吗?

"user": [
            {
                "_id": "1",
                "age": 21,             
            },
            {
                "_id": "2",
                "age": 22,
            },
            {
                "_id": "7",
                "age": 30,
            }
]

我可以通过以下方式获得特定的id值

 .body("user[0].id", some validation)  result: 1

当我做这样的事情时,我会得到所有的id

.body("user.id", some validation)  result: [1,2,7]

需要验证结果是否符合DESC/ASC订单

.body("user.id", isDescOrder()/isAscOrder())

共有1个答案

冯元魁
2023-03-14

您可以使用isInOrder(Iterable

List<String> user_IdList = given()
        .when()
        .get("api_url")
        .then()
        .extract()
        .jsonPath()
        .getList("user._id");

List<Integer> integerList = user_IdList
        .stream()
        .map(x-> Integer.parseInt(x))
        .collect(Collectors.toList());

boolean isInAscOrder = isInOrder(integerList, Ordering.natural());

此处isInAscOrder为true。因为1,2,7是升序的。

 类似资料:
  • 我有一张日期表 我想按时间顺序点菜。我发现另一个线程推荐使用: 但输出不能正确地将最新的排序为最旧的。

  • 问题内容: 桌子: 的PHP HTML结果: 任何人都注意到桌上的结果。时代是不正确的顺序? 我改变了另一种方式与ASC / DESC,仍然显示最后一个id_timeslot的时间吗? 预期结果: 问题答案: 您正在对记录进行分组,因此每种情况下您只会看到最后一次。 尝试使用

  • 我是新来的,请放心。我尝试了下面的代码来获得响应 这是json响应 如何计算id或列表的大小。帮助我。

  • 我有2个MYSQL表,用户和分数。详细信息: 用户表: 得分表: 我的目的是获得20个用户列表,这些用户具有点域排序DESC(降序)和平均时间域排序ASC(升序)。我使用以下查询: 结果是: 结果是错误的,因为第一行正好是point=100,avg_time=60。 我期望的结果是: 我尝试了很多次不同的查询,但结果仍然是错误的。你能给我一些解决方案吗? 提前谢谢!

  • ASC/DESC ASC 及 DESC 关键字被使用在这些上下文之中: CREATE INDEX 语句 ORDER BY 子句

  • 我使用的是junit4提供的restassured。在我的测试方法中,我在mongodb中创建了一个对象,当我运行测试时,它也成功地持久化了。但是我需要存储创建的id,所以我尝试获取响应体。但是< code>response.getBody()。asString()为空。 当我从外部调用restendpoint时,它会返回带有相关字段的响应体,因此rest API没有问题。 如果上述问题没有答案,