簡體   English   中英

如何使用 RestAssured 斷言 JSON 二維數組?

[英]How to assert JSON 2D array using RestAssured?

使用 RestAssured 並且我正在努力斷言響應正文中的 2D 字符串數組。 我將 JSON 回復為:

{
    "status": {
        "code": "00",
        "message": "SUCCESS",
        "timestamp": "2021-06-14T11:25:34Z"
    },
    "data": {
        "data": [
            [
                "elementZero",
                "elementOne",
                "elementTwo"
            ]
        ]
    }
}

我的代碼如下

    given()
            .auth().oauth2(token)
            .when()
            .pathParam("orderId", orderId)
            .get("/getScreeningsForOrder/{orderId}")
            .then()
            .statusCode(200)
            .contentType(ContentType.JSON)
            .assertThat()
            .body("data.data[0]", arrayContainingInAnyOrder("elementZero", "elementOne", "elementTwo"))
            .body("status.code", equalTo("00"))
            .body("status.message", equalTo("SUCCESS"))
            .body("status.timestamp", Matchers.startsWith(expectedTimestamp_yyyyMMdd))
            .extract()
            .response();

我收到以下錯誤:

預期:["elementZero", "elementOne", "elementTwo"] 任意順序
實際:<[elementZero, elementOne, elementTwo]>

如何斷言 data.data 以確保它包含一個與我的數組匹配的元素?

試試這些—— "data.data[0][0]""data.data[0].[0]"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM