使用postman对接口进行测试,首先点击blank collection创建一个集合。
将名称改为对应测试的项目名称,这里以http://bbs.windsns.com举例
然后点击add request创建一个新请求
将名称命名为对应项目对应的接口测试
根据接口文档填入对应URL,请求方式,请求头跟请求参数,这里以http://bbs.windsns.com举例。对PHP网站登录接口进行测试,因为PHP网站登录需要获取token,我们先打开它的主页提取token并保存在环境变量中,选择请求方式get请求,输入URL,点击send
在下方response中会出现网站的html代码
点击tests断言通过正则表达式将其中的token提取出来,并存入环境变量。ps:断言属于后置处理
通过console.log可以打印变量,以此判断有没有提取成功,通过下图可以得知获取成功,但是我们只需要后边的值,所以通过[1]来获取
也可以通过json提取器进行提取,因为本次是前端html代码进行测试,所以不使用json提取器
//使用json提取器提取响应数据的token值
var result =JSON.parse(responseBody);
获取到token后将它存为全局环境变量,可以通过postman在右侧提供的快捷代码进行编写。同时添加字符串断言,判断网页是否打开成功
点击全局环境变量environment可以看到已经保存成功
如果需要在当前环境中保存变量,可以通过setEnvironmentVariable来保存
可以看到测试环境也保存成功
token保存成功后进行登录测试,通过抓包将登录所需要的字段及请求方式,请求形式抓取出来并对应填写。优先查看接口文档,没有文档再抓包。通过双大括号进行变量的调用,因为真实项目中有大量数据,我们直接对字段数据进行数据驱动,也将字段数据设置为变量。ps:post请求数据存在body当中。
填写完对应字段并完成数据驱动后对返回结果进行断言,缩短测试时间,获取请求的所有数据并通过数据驱动对其返回结果进行测试用例的执行
创建一个CSV文件填写对应字段数据,返回结果
点击 run collections执行集合
可以勾选需要执行的请求,点击select file进行选择csv文件进行数据驱动
点击preview可以查看数据
点击 run开始执行,需要注意的是,当你有多少条数据的时候,它会默认帮你执行多少次。ps:加多一个注销测试的原因是因为登陆成功后不注销将会无法执行接下来的用例
需要关注passed的跟failed的,是否符合当初编写用例时的预期,一个完整的接口测试就完成了
如果需要生成测试报告,可以使用newman,Newman 是 Postman 推出的一个 nodejs 库,可以方便地运行和测试集合,并用之构造接口自动化测试和持续集成。我们需要将对应的集合json,环境变量json进行导出。首先点击export对请求集合进行导出
接着对环境变量进行导出
最后对全局变量进行导出
然后将他们放置在一个文件夹中,打开cmd,输入newman run 集合名.json -e 环境变量名.json -g 全局变量名.json -d 数据名.csv -r html --reporter-html-export 测试.html运行。ps:Newman是基于node.js的一个库,需要预先安装node.js并配置好环境变量,完成后进行 npm install - g Newman下载才可以使用,html也是同理。
执行后会在json文件夹中生成对应命名的HTML
打开后就可以看到生成的测试报告