Rest-Assured的使用步骤:
1. 使用RestAssured类生成RequestSpecification对象
2. 设置待测Restful API服务器地址(URL)
3. 指定向服务器发送请求的方法类型(get 或 post)
4. 向服务器发送Request请求
5. 获取服务器响应报文,对报文进行响应处理,例如设置检查点进行测试。
先举一个简单的例子,边看代码边解说:
public class TestCase { @Test //TestNG测试标签 public void testResponse() { // 设置Restful WebService 服务地址 RestAssured.baseURI = "http://qatools.cn/api/message"; // 获取HttpRequest 请求对象 RequestSpecification httpRequest = RestAssured.given(); // 使用GET方法向服务器发送请求并获取服务器的响应信息 Response response = httpRequest.request(Method.GET, "/getList?pageSize=5&apiSource=client"); // 为了查看响应信息内容,我们把服务器返回的信息打印出来 String responseBody = response.getBody().asString(); System.out.println("Response Body is => " + responseBody); } }
打印出的服务器响应信息如下:
contentId: - { _id: "H1MLwht3f", title: "Selenium 从入门到实战", stitle: "Selenium 从入门到实战", updateDate: "2018-05-01", date: "39 分钟前", id: "H1MLwht3f" },
大家可以看到服务器信息返回的是JSON格式的报文。JSON是JavaScript Object Notation的简称,它是一种结构化的数据,计算机和人都比较容易识别。目前特别是互联网应用使用JSON格式数据在网络间传递数据的方式越来越多。由服务器返回的JSON报文可以看到,JSON的数据结构其实就是一个个键值对:右侧为键值对名称,左侧为实际内容,也即是键值对名所对应的值,中间以冒号“:”分开。
使用 RestAssured.given() 生成的RequestSpecification对象支持各种HTTP请求方法,包括GET,POST,PUT,PATH,DELETE,UPDATE,HEAD和OPTIONS等。因此我们测试Restful Webservice基本是使用RequestSpecification就能满足各种测试要求了。
完整代码请见:
GITBOOK: Rest-Assured 实战 REST API 自动化测试
请关注自动化测试技术公众号: