robotframework(后续简称为robot)是一款自动化测试框架,可能做各种类型的自动化测试。
本文介绍通过robotframework来做接口测试。
在robot当中,python语言的接口测试库名称为RequestsLibrary
安装语法如下:
pip install -U requests
pip install -U robotframework-requests
在robot编辑工具eclipse当中,创建test suites,并在Settings区域当中引入:
*** Settings ***
Library RequestsLibrary
如下图所示,RequestsLibrary当中,有22个关键字。
其中,get、post、head、options、patch、put、delete这7个关键字不建议用,将被废弃。
用get request、post request、head request、options request、patch request、put request、delete request这7个关键字来代替他们。
所以一共有15个关键字可用。
分为三个类别:
第一类:与服务端的会话
包含 Create Session创建会话相关的5个关键字、
update session更新会话关键字、Delete all session删除会话
第二类:请求类型
get requests等发送请求的关键字。
第三类:响应结果转json:To json关键字
将json字符串转换成python对象。
关键字1:Create Session
关键字功能:创建与服务端的会话
参数1:alias 会话别名。在此会话之上的http请求都需要带上此别名。
参数2:url 服务器base url。此处并不是指具体某个接口的地址。而服务器根地址。比如域名或者ip地址+端口。
参数3:headers 请求头。与服务器会话过程中,通过的请求头。
参数类型为字典 。
参数4:verify SSL证书将被验证。默认为False,表示不验证。
参数5:auth 参数类型为列表。用户名和密码的列表形式。
用来作http基本认证。
其它参数略过,可参考网上其它资料。
关键字2:Post Reqeust
关键字功能:发送post请求并得到响应结果。
此处的响应结果为python requests库当中的Response对象。
参数1:alias 会话别名。来自Create Session关键字中的别名。
表示在某个会话上进行请求。
参数2:uri 接口地址。但是不包含服务器的base url。
参数3:data 请求数据。参数类型为字典 。
参数4:json 请求数据。请求数据类型为application/json。
参数类型为字典 。
参数5:params 查询参数。直接组合在接口地址后面,并不放在请求体当中。
参数6:headers 请求头。
其它的get请求/put请求等请参看网上其它资料。
步骤如下:
1)创建与服务端的会话(create session类的关键字)
2)在1)的基础上,发送请求。
3)获取响应结果,可后续对响应结果进行解析和断言(robot标准库中的断言关键字使用)。
演示案例:
◆ 注册链接:
http://test.lemonban.com/ningmengban/app/register/register.html
◆ 注册接口:
http://test.lemonban.com/ningmengban/mvc/user/register.json
◆ 请求类型:POST
◆ 请求数据格式:
application/x-www-form-urlencoded
◆ 请求数据:
发送post请求示例(注意:post请求必须在请求头当中指明数据格式):
执行后的结果为:
脚本源文件内容如下:
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取 【100%免费无套路】