实验简介
本节实验主要为大家讲解如何利用Robot Framework结合常用的关键字完成对Agileone系统中的"需求提案"模块进行协议级接口的自动化测试脚本开发。本实验主要是基于Requests插件进行,所以读者要能够掌握本实验的关键知识,需要首先熟悉HTTP/HTTPS协议。如这方面的知识储备比较欠缺的话,建议先观看强哥的视频:http://www.woniuxy.com/course/14
实验目的
(1) 掌握RF的Requests库的常用关键字及用法。
(2) 能够熟练运用Requests库来完成接口级自动化测试脚本开发。
实验流程
1. Requests库常用关键字
我们先来对Requests库的常用关键字进行一个了解:
(1) Create Session:创建一个连接到服务器端URL地址的HTTP会话。
(2) Get Request:发送GET请求,其中也内置了一个关键字叫"Get",系统已不再建议使用。
(3) Post Request:发送POST请求,同样,也不再建议使用"Post"关键字。
(4) To JSon:将响应的内容转换为JSON数据格式。
(5) Delete All Sessions:清空当前会话。
此处需要特别注意的是,RF已经自动帮我们维护了服务器端与客户端的Session和Cookie,我们只需要在Create Session时指定一个本次连接的别名(Alias),同时在后面的每一次请求处理的过程中都通过此别名来与当前Session建立关系。
下面,我们仍然通过对Agileone的登录,需求提案模块的新增与修改来为大家演示其用法。
2. 先实现一个简单的GET请求
对上述代码进行一下说明:
(1) 第1行:Create Session,用于创建一个与对应的服务器地址的连接会话,并将该会话别名设置为"agileone",以供后面的请求使用,以保持会话状态。
(2) 第2行:发送GET请求到首页,并且将响应赋值给变量${response}。
(3) 第3行:对首页进行简单的断言,此处我们使用了Python的decode函数对响应的内容进行解码处理。同时获取响应的内容需要使用${response.content}属性,而不是直接使用${response},这是需要注意的地方。