使用 JSONPath 提取值的方法。
我们可以使用 Rest Assured 中的 JsonPath 来提取值。这是借助 jsonPath 方法(即 JsonPath 类的一部分)完成的。然后,我们需要使用 get 方法并传递要从 JSON 响应中获取的键。
我们首先将通过 Postman 向端点发送 GET 请求,并观察 JSON 响应。这里,键是 userId、id、title 和 body。

示例
代码实施
import org.testng.annotations.Test;
import static io.restassured.RestAssured.*;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
public class NewTest {
@Test
void getValueJsonPath() {
//base URL
RestAssured.baseURI = "https://jsonplaceholder.typicode.com";
RestAssured.basePath = "/posts";
//obtain a response in JSON
Response r = given().contentType(ContentType.JSON)
.log().all().get("/2");
//JsonPath class
JsonPath p = r.jsonPath();
//get JSON fields
String u = p.getString("userId");
String i = p.getString("id");
String t = p.get("title");
String b = p.get("body");
System.out.println("User Id: " + u);
System.out.println("Id: " + i);
System.out.println("Title: " + t);
System.out.println("Body: " + b);
}
}输出

广告
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP