[英]How can I read http response body using selenium java?
我需要使用 selenium 和 Z93F725A07423FE1C889F448B33 读取 API 响应 JSON 文件。 在得到 http 请求的响应之前,我已经得到了代码。 但不确定如何进一步深入并获取消息正文。
如果我清楚地理解了您的问题,那么您就是在要求阅读并验证您得到的回复。
最佳实践是为您的响应创建 pojo class。 例如,如果您的回复采用以下格式
{
"response":{
"userId": 1,
"firstName": "Suhail",
"lastName": "Ahmed",
}
"data": {},
"timestamp": "2022-07-27T11:21:55.347Z"
}
您需要为此创建一个 pojo class 。
GetUserDetailsResponse.java
public class GetUserDeatilsResponse {
private UserDeatilsResponseAttr response;
private String data;
private String timestamp;
public UserDeatilsResponseAttr getUserDeatilsResponseAttr() {
return response;
}
public void setUserDeatilsResponseAttr(UserDeatilsResponseAttr response) {
this.response = response;
}
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
public String getTimestamp() {
return timestamp;
}
public void setTimestamp(String timestamp) {
this.timestamp = timestamp;
}
}
UserDetailsResponseAttr.java
public class UserDeatilsResponseAttr{
private int userId;
private String firstName;
private String lastName;
public int getFirstName() {
return userId;
}
public void setFirstName(int userId) {
this.userId = userId;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
并验证 lastName 字段,在您的测试 class 中调用如下响应
测试.class
public class Test{
@Test
public void test1(){
// get your response here
GetUserDeatilsResponse userDetailsResponse = response.as(GetUserDeatilsResponse.class);
System.out.println(userDetailsResponse.getUserDeatilsResponseAttr.getLastName())
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.