<!--Rest assured依赖包-->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>3.0.1</version>
<scope>test</scope><!--会发现我们自己建的类无法使用,是因为设置了只在测试时使用,用于编译和运行测试代码。不会随项目发布,删除<scope>后所有类都可使用-->
</dependency>
<!--独立Json path依赖包-->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>json-path</artifactId>
<version>3.0.1</version>
</dependency>
<!--独立的Xml path依赖包-->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>xml-path</artifactId>
<version>3.0.1</version>
</dependency>
在类中引入相关 rest-assured 包:
import static io.restassured.RestAssured.*
官方建使用静态引入相关包,如果非静态方式引入,get()方法就会提示不存在,让你创建些方法。
cookies(“name”,”testerhome”,”password”,”123456”,……)
cookie(“name”,”testerhome”).and().cookie(“password”,”123456”)
proxy("192.168.221.190",80)
Map<String, String> parameters = new HashMap<String, String>();
parameters.put("pm", "2");
parameters.put("a", "2");
parameters(parameters);
parameters (parameters )
param("username", "John").and().param("password", "1234").
Header first = new Header("username", "testerhome");
header(first)`
headers("username", "testerhome", "username1", "testerhome1")
String url = "http://platform.app.autohome.com.cn/platform_v7.5.0/api/opt/propaganda";
//设置入参
Map<String, String> parameters = new HashMap<String, String>();
parameters.put("pm", "2");
parameters.put("a", "2");
parameters.put("v", "7.6.0");
parameters.put("deviceid", "7b64fb2877cbb15900b670886ea3f71488899c90");
parameters.put("cityid", "110100");
//设置url请求头
Header first = new Header("username", "xushizhao");
Response response = given().proxy("192.168.221.190",80)
.parameters(parameters)
.header(first)
.get(url);
//查看请求正文
System.out.println(response.asString());
方法 | 介绍 |
---|---|
response.asString() | 获取请求返回内容体 |
response.response.getContentType() | 获取响应的内容类型 |
response.getStatusCode() | 获取响应的状态代码 |
response.getHeaders() | 获取所有响应头信息 |
response.getHeader(String name) | 根据指定的 header 名称,获取对应的响应信息 |
response.getCookie(String name) | 根据指定的 cookie 名称,获取对应 cookie 的值 |
response.getCookies() | 获取所有 cookies 信息 |
response.getTime() | 响应时间 (单位:毫秒) |
rest-assured 的代码相对来说简洁明了,而且还提供了相应的断言机制、json 验证以及封装了相关jsonpath、xmlpath,使接口测试更加方便快捷,对接口测试感兴趣的小伙们可以试试~
相关使用我们会持续更新,欢迎大家一起来分享 rest-assured 相关知识,一起构造rest-assured相关节点~