postman自动化测试
文章目录
参考
- Postman 快速入门之脚本语法
- Postman接口测试自动化介绍
- 自动化接口测试之Postman(一篇搞定) - (很全)
- postman官方脚本语法 pre-request Script / Tests /javascript - (扩展)
这里简单演示在postman中怎样实现自动化测试(不涉及到用户登录的token认证,可参考自动化接口测试之Postman(一篇搞定)学习)。
导入测试用例文件,测试web接口
postman使用流程:创建collection文件夹,在该文件夹中创建post,get请求;其中传入的参数支持url格式(form-data),即在url后面拼接参数和值,来访问接口;也支持json格式(raw)
postman自动化测试:在一条post/get请求中,pre-request scripts是请求前执行的脚本,Tests是请求返回结果执行的脚本。
1、变量设置
- 如果是url格式的请求,则在form-data中填写相应参数(
pname
),并定义参数变量({{pname}}
),使其能够在pre-request scripts中通过测试用例文件为指定参数变量赋值,动态测试web接口。参考自动化接口测试之Postman(一篇搞定)
- 如果是json格式的请求,则设置raw为json字符串类型,并写入带参数变量的json字符串。参考Postman - Importing data files
2、pre-request script请求前执行的脚本
pre-request script为请求前执行的脚本,主要实现将测试用例文件中的数据赋值给Body中定义的参数变量。参考postman接口自动化测试实战
pm.collectionVariables.set("TDATA",data.TDATA)
pm.collectionVariables.set("TTYPE",data.TTYPE)
3、Tests请求返回结果执行的脚本
pm.test("insertPersonal", function () {
pm.response.to.have.status(200);
});
tests["Status code is 200"] = responseCode.code === 200; //Status code : Code is 200
//判断请求时长是否小于200ms ,具体时长按情况自定义
tests["Response time is less than 200ms"] = responseTime < 200;
其中tests
为键值对形式(postman中与脚本相关的变量,可以直接使用),用于表示我们的测试结果是成功与否,最终展示在 Test Results
中。
- key :(如:code 200)我们可以用来当做结果的一个描述
- value:其值为布尔型,
true
表示测试通过,false
表示测试失败。
4、使用Runner进行自动化测试
点击Runner,选择你要自动化测试的Collections文件夹 ,勾选你要自动化测试的web接口,导入测试用例文件,这里使用的是json格式的用例文件(可以使用csv),文件内容如下:
[
{
"TDATA":9,
"TTYPE":3
},
{
"TDATA":2,
"TTYPE":4
},
{
"TDATA":3,
"TTYPE":6
},
{
"TDATA":4,
"TTYPE":8
}
]