Rest-assured3 - 接口测试断言
0. 知识点
我们将介绍如下知识点: 1. 接口断言使用场景 2. 响应结果类型 3. 响应结果断言 问题: 1. 如何确保接口请求可以发送成功 2. 如何保证符合业务需求 解决方案: 响应断言
1. 响应结果类型
2. 简单断言: 响应状态码
public void testStatusCode(){
given()
.log().all()
.when()
.get("https://httpbin.ceshiren.com/get")
.then()
.log().all()
.statusCode(200);
}
3. 简单断言: 响应体
引入新依赖hamcrest-core和hamcrest-library 用于body对比。需要导入
import static org.hamcrest.Matchers.equalTo;
<!-- https://mvnrepository.com/artifact/org.hamcrest/hamcrest-core -->
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>1.3</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hamcrest/hamcrest-library -->
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<version>1.3</version>
<scope>test</scope>
</dependency>
public void testBody(){
given()
.when()
.get("https://httpbin.ceshiren.com/get")
.then()
.log().all()
.statusCode(200)
// .body("origin", equalTo("10.7.136.128"));
.body("origin", equalTo("172.17.56.110"))
;
}
复杂断言
如果碰到复杂断言应该怎么处理? jsonpath jsonschema 自行编写解析算法
上一篇:
IDEA上Java项目控制台中文乱码
