Если вы ожидаете результат в виде массива, вы можете создать класс pojo. Например:
public class ExampleResponse {
private Object next;
private Object previous;
private Result[] results;
//add getters and setters
public class Result {
private String huid;
private String name;
//add getters and setters
}
}
и затем преобразуйте ваш json ответ на java объект
ExampleResponse pojo = given()
.when().get(endpoint)
.then().extract().body().as(ExampleResponse.class);
, после этой манипуляции вы можете извлечь и / или подтвердить любое поле. Например:
...
results[0].isBlocked();
...
Также вы можете попробовать извлечь значение поля, используя метод пути:
...
given()
.when().get(endpoint)
.path("results[0].arns[0]");
...
given()
.when().get(endpoint)
.path("results[0].fields.timestamp");
...
Если вы ожидали обычного json (без результатов в виде массива), вы можете использовать это методы:
//assert value
given()
.when().get(endpoint)
.then()
.assertThat()
.body("result.name", equalTo(someName));
//assert response has or not parameter
given()
.when().get(endpoint)
.then()
.body("results", hasKey("name"))
.body("results", not(hasKey("name")));
Больше примеров на странице использования . И это описание тоже может пригодиться! Надеюсь, что это поможет!