response.jsonPath() 元素周围有方括号,如何检索字符串值?放心
response.jsonPath() has square brackets around the element, how do I retrieve the string value? Rest Assured
我有一个 HTTP 响应主体,在我发出 GET 请求时看起来是这样的:
[
{
"id": "1111",
"type": "Sale",
"name": "MyNameTest",
"shortDescription": "Sale a"
}
]
当我尝试使用“Rest Assured”断言结果时,名称值始终包含在方括号 [].
中
final String returnedAttributeValue = response.jsonPath().getString("name");
Assert.assertEquals(returnedAttributeValue, "MyNameTest");
因此测试失败,预期为“MyNameTest”,但为“[MyNameTest]”
谁能告诉我如何解决这个问题?
您正在访问数组中的值,因此请使用 name[n]
final String returnedAttributeValue = response.jsonPath().getString("name[0]");
Assert.assertEquals(returnedAttributeValue, "MyNameTest");
我有一个 HTTP 响应主体,在我发出 GET 请求时看起来是这样的:
[
{
"id": "1111",
"type": "Sale",
"name": "MyNameTest",
"shortDescription": "Sale a"
}
]
当我尝试使用“Rest Assured”断言结果时,名称值始终包含在方括号 [].
中 final String returnedAttributeValue = response.jsonPath().getString("name");
Assert.assertEquals(returnedAttributeValue, "MyNameTest");
因此测试失败,预期为“MyNameTest”,但为“[MyNameTest]”
谁能告诉我如何解决这个问题?
您正在访问数组中的值,因此请使用 name[n]
final String returnedAttributeValue = response.jsonPath().getString("name[0]");
Assert.assertEquals(returnedAttributeValue, "MyNameTest");