RestAssured Json 响应验证与 GPath



我收到以下针对我的 API 的错误请求的响应。我正在使用RestAssure进行我的休息响应断言。

{
"message": "An entity of type topic was passed in an invalid format",
"meta": {
"display": {
"topic": [
{
"name": [
"must not be blank"
]
},
{
"contentType": [
"must not be blank"
]
},
{
"content": [
"must not be blank"
]
},
{
"version": [
"must not be blank"
]
}
]
}
}
}

我需要验证响应的所有属性的值。我正在努力验证这条路径:meta.display.topic.contentType.我无法为它想出GPath。

这是我的断言:

given().body("{}").when()
.post(BASE_URL)
.prettyPeek()
.then()
.statusCode(400)
.contentType(ContentType.JSON)
.body("message", is("An entity of type topic was passed in an invalid format"),
"meta.display.topic.contentType", is("must not be blank"));

由于路径不正确,断言总是失败。

为了避免主题对象的硬编码数组位置,以下将起作用:

meta.display.topic.find { it.contentType != null }.contentType[0]

相关内容

  • 没有找到相关文章

最新更新