REST-Assured - 无法访问 JSON 响应中的特定键

REST-Assured - Unable to access a particular key in the JSON response

我正在使用 REST-Assured 库,我在访问下面 JSON 响应中的特定键 freshdeskId 时遇到了一个非常奇怪的问题,这是一个 Response 对象在我的代码中。

{
    "status": true,
    "responseData": {
        "orderId": "553259",
        "orderItemName": "None",
        "userId": "636049",
        "freshdeskId": "#155",
        "orderItemId": null,
        "updatedOn": 1491824018000,
        "message": "OK"
    }
}

我可以使用 response.path("responseData.orderId")(或类似的)访问 orderIduserIdupdatedOn 等其他字段,但是 response.path("responseData.freshdeskId") return 是一个空字符串,而它应该是 return "#155" 值。

找到了这个问题的根本原因,原来这是一个服务器端问题,因为它没有发送 freshdeskId 属性的值,因为需要 异步获取相同的值 来自别处。

因此,作为解决方案,我在生成 response 的测试中添加了 60 秒的等待时间。该值是 freshdeskId 在此期间在后端更新。

你看到了吗? https://github.com/rest-assured/rest-assured/wiki/Usage#bootstrapping-restassuredmockmvc

此外,这里添加了支持异步的请求 - https://github.com/rest-assured/rest-assured/issues/462