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项目控制台中文乱码