最近为了测试接口的响应速度,故研究了一下postman自动化测试。其实很简单的。
1. 前期准备
但在测试前,你要清楚的知道你是想在接口执行请求之前运行还是请求完成之后运行。我在网上发现很多都是请求完成之后运行。因为我这边是测试接口的速度,故是在接口之前运行的。
你还需知道Pre-request Script 与 Tests 区别,区别在于:Pre-request Script 中的脚本是在执行请求之前运行,而Tests 中的脚本则是在请求完成之后执行。在我测试时Tests是用来判断接口响应是否正确的。
2. 具体步骤
- 准备好Json数据,这里需要注意一下,postman的语言基本上都是JavaScript,所以你postman的里面的单引号(’ ')要换成双引号(" ")。类似于下图,因为涉及到敏感数据故涂掉了。
Json数据你也可以不用摆的那么整理,到时在Postman预览时,会帮你自动摆好的。而且还会把多少行数据给你自动显示出来,非常好的。
上面的图片是点击run之后显示的。
- 请求URL的设置
在URL这里像我这样的添加变量
在设置pre-request Script
这样我们就把Json数据加载进来了。 - 设置Tests
tests给了很多快捷的代码在右边,因为我这边每次返回的值不一样,我就没怎么用,就检测了一下返回值是不是200.
postman还会将检测结果反馈出来。 - 正式测试
下面是7条数据的测试结果,会将每次测试的时间都显示出来的,你也可以导出结果,更直观的观看(这里你可以看到我测试下面显示This request does not have any tests,这里并不是出错,而是我本来就没设置断言,也可以理解为没有进行判断)
按照下面的顺序,选择我们的Json文件,就可以了,有可能会提示Postman的文件找不到,你可以去postman的安装路径下面去找,把json放进files文件里就好了,我这里的路径是C:\Users\Administrator\Postman\files,应该是不一样的,你们找找。
还有注意右边的选项,你需要用哪个就选择哪个。
对了Save responses一定要选上,否则你看不到结果的。
类似于这样
因为也是刚学,就把自己的理解写出来,避免忘记。
其实本来就想直接写JavaScript代码的,但没解决就换成导入文件的形式了,不过我还是觉得写JavaScript代码更加灵活,更加容易操作,类似于下面
应该是我变量没有设计好,有时间在继续研究。
var packjson = '[{"person_id": "6", "id_code": "************************", "person_name": "***"}, {"person_id": "7", "id_code": "************************", "person_name": "***"}, {"person_id": "8", "id_code": "************************", "person_name": "***"}, {"person_id": "9", "id_code": "************************", "person_name": "***"}, {"person_id": "10", "id_code": "************************", "person_name": "***"}]';
var Jsondata = JSON.parse(packjson);
for(var i in Jsondata){
pm.environment.set("gmsfhm",Jsondata[i].id_code);
}
其他的text和csv文件,处理方式和Json基本一致,只是感觉Json数据比较容易处理。
推荐两篇写的比较好的。
链接: 自动化接口测试之Postman(一篇搞定).
链接: postman接口测试-批量参数化(导入csv或txt文件).