在使用Rest Assured获取两个同名但具有不同值的字段时,可以通过以下步骤实现:
例如,使用Rest Assured发送GET请求获取某个API的响应:
Response response = given()
.when()
.get("https://example.com/api")
.then()
.extract()
.response();
Rest Assured提供了JsonPath类来处理JSON响应,并通过路径表达式获取指定字段的值。在这种情况下,由于两个字段具有相同的名称,我们需要使用JsonPath的属性操作符来选择它们。
JsonPath jsonPath = response.jsonPath();
String value1 = jsonPath.getString("field[0].name"); // 获取第一个字段的值
String value2 = jsonPath.getString("field[1].name"); // 获取第二个字段的值
在上面的代码中,"field"是两个同名字段的父级对象,"[0]"和"[1]"表示两个字段的索引。
现在,我们可以对比并使用获取到的两个字段的值。
if (value1.equals(value2)) {
// 处理字段值相等的情况
} else {
// 处理字段值不相等的情况
}
注意事项:
领取专属 10元无门槛券
手把手带您无忧上云