文章目录

写在前面
java 的 mvn 依赖中有一个 httpclient 工具可以做到接口的访问,但是如果用 httpclient 去写大量的接口请求,会显得非常复杂且臃肿(除非你自己对 httpclient 进行封装弄一个好用的框架),如果我们使用 REST assured 来做大量的接口测试,则能大大提高脚本开发效率
是一个能够简化测试rest服务的 Java DSL,像 ruby 或者 python 一样的动态语言去测试和验证 http 服务。基于 java 并且兼容了 groovy 动态语言的特性,使我们像写脚本语言一样去测试 http 服务
依赖的引入
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>4.2.0</version>
</dependency>
简单示例
get 访问百度,返回响应码,以及响应体信息
given()
.get("https://www.baidu.com")
.then()
.statusCode(200)
.log().all();
如果要做断言,REST assured 支持直接在 body() 中判断,而不是显示的直接使用 assert 去断言
given().when()
.get()
.then()
.body("xxx", Matchers.equalTo("xxx"));
当然还可以使用 post 请求,还有指定请求的 contenttype 等等
对于提取返回的响应我们建议使用如下形式,它会返回一个 Response 对象,然后再通过 Response 中的 path() 方法即可拿到想要的 json 数据
given()
.contentType("application/json")
.put