postman界面
Jason格式
对象{}包含属于一个对象属性信息
例:
{
“姓名”:“璃陌”
“年龄”:“23”
…
}
数组[]数据之间是并列关系
例:
[“功能测试”,“APP测试”,“接口测试”]
对象和数组的嵌套[{},{},{}]
postman中的变量
优先级:本地变量>数据变量>环境变量>集合变量>全局变量
1、全局变量
作用域:整个postman中的所有调用该变量的接口
注:变量名做好唯一
可以设置多个全局变量
当全局变量和环境变量名称相同时,采用环境变量(环境变量的优先级>全局变量)
设置方式:
①界面设置:Environments->Globals->设置变量名和变量值
在需要的请求中通过{{变量名}}调用
②脚本设置:Pre-req->选择算法set a global variable->设置变量名和变量值
调用:{{settoken}}
2.环境变量
作用域:postman中所有环境中调用该变量的接口
设置:
①界面设置:Environments->New Environments->设置变量名和变量值
②脚本设置:Pre-req->选择算法set an environment variable->设置变量名和变量值
通过{{变量名}}调用
3、本地变量
作用域:仅作用于当前使用该变量的请求
设置方式:脚本设置–语法:pm.variables.set(“变量名”,“变量值”)
4、集合变量
作用域:用于集合中调用该变量的请求
设置:
①界面设置:选中集合文件->Pre-req->选择算法set a collection variable->设置变量名和变量值
通过{{变量名}}调用
②脚本设置:选中集合文件->variables->设置变量名和变量值
5、数据变量用于集合测试
作用域:集合测试不同字段要用不同数据来传参
设置:通过读取文件中的数据进行测试
postman自动传参
例:获取token值(利用两个标签)
一个标签获取token,读取响应信息中的token并设置为变量,另一个标签自动读取变量,
两个标签一起通过集合实现自动传参。
var data=JSON.parse(responseBody);//设置一个变量data存储token请求的信息
pm.globals.set(“token01”,data.token);//从响应信息中获取token的值,并设置为全局变量
postman的预请求
请求执行的顺序:预请求–业务请求–断言
1、设置变量、获取变量值
1)Set a global variable(设置一个全局变量)的示例如下:
pm.globals.set(“variable_key”, “variable_value”);
2)Set an environment variable(设置一个环境变量)的示例如下:
pm.environment.set(“variable_key”, “variable_value”);
3)Get a global variable(获取一个全局变量)的示例如下:
pm.globals.get(“variable_key”);
4)Get an environment variable(获取一个环境变量)的示例如下:
pm.environment.get(“variable_key”);
5)Get a variable(获取一个变量)的示例如下:
pm.variables.get(“variable_key”);
2、清除变量的示例脚本
1)Clear a global variable(清除一个全局变量)的示例如下:
pm.globals.unset(“variable_key”);
2)Clear an environment variable(清除一个环境变量)的示例如下:
pm.environment.unset(“variable_key”);
3、发送请求
1)Send a request(发送一个请求)
pm.sendRequest(“https://postman-echo.com/get”, function (err, response) {
console.log(response.json());
});
postman的断言对响应信息处理
(1)response body:contains string (校验返回结果中是否包含某个字符串)
(2)response body:Is equal to string (校验返回结果中是否等于该字符串)使用少,token会变
(3)response body:Json value check (校验返回结果中某个字段是否等于某个值)
(4)response header:content-type header check (校验响应头是否包含某个值)
(5)response time is less than200ms (校验响应时间是否少于200ms)
(6)Status code:code is 200 (校验响应头是否包含某个值)