4.18-token验证
在postman编写的每一个叫测试用例,既然收测试用例,那么就会有结果对比
API测试断言tests(判断一个接口测试用例是否成功,或者说是通过,是根据断言的三个条件都成立的情况下得到的结果)
- 
协议状态码 例:登录错误的状态码 返回响应数据只需要验证101 
- 
响应数据 
- 
业务状态码(是程序员根据自己的想法来定义的) 
tests
(例如)
- 
//定义一个变量来存放响应数据 
- 
var jsonData=JSON.parse(responseBody) 
- 
- 
//查看返回的响应数据 
- 
console.log("查看响应数据\n",jsonData) 
- 
- 
//验证协议状态码 
- 
pm.test("Status code is 200", function () { 
- 
pm.response.to.have.status(200); 
- 
}); 
- 
- 
tests["验证username字段"]=jsonData.user.username=="无涯" 
- 
- 
console.log(jsonData.user.usernamne) 
- 
- 
//验证usermane字段 
- 
var abc={ 
- 
"a":{ 
- 
"aa":"aaa" 
- 
} 
- 
} 
- 
console.log(abc.a.aa) 例如:验证uid和telephone 
reports explore
collections:集合,就收测试用例的套件,在这个容器里可以存放很多的测试用例,测试套件。
保存:
collections--》点击+修改名称点击save
在postman,调用变量的方式是:
{{变量名}}
动态参数在postman的解决思路(登录为例)
1、登录成功后,在登录接口的tests中定义一个变量来获取响应数据中的动态参数token
2、在下个接口(比如首页等等)中,调用定义的变量,调用的方式是{{变量名}}
3、那么这个过程,需要把登录接口和引用登录接口的变量的接口都需要添加到collection中,它的顺序是登录结论在前
4、然后执行collection,这样就能够实现动态参数的关联
例如:
动态参数/关联/上个接口的输出是下个接口的输出
- 
登录 
auth---》url---》body(copy--》payload--》preview--view source)选json---》》tests
tests:
1.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
2.pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
}); 验证协议码状态
3.tests["验证username字段"]==jsonDate.user.username=="无涯" 验证XXX比如用户名
4.pm.environment.set("setToken", "jsonData.token"); 获取token
5.验证token
1)、pm.environment.set("getToken", jsonData.token);console 定义一个变量
2)、pm.environment.get("getToken"))获取token变量
3)、tests["验证token的值"]=jsonData.token==pm.environment.get("getToken") 获取验证token的值
- 
首页 
index==》url==》headers(authorization--JWT(getToken))
查看preview- api值为0
tests:
1.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
2.pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
}); 验证协议码状态
3.tests["测试用例个数"]=jsonData.count.api="0"
- 
添加 
product==》url==》headers(authorization--JWT(getToken))
code=201
tests:
1.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
2.pm.test("Status code is 201", function () {
pm.response.to.have.status(201);
});
3.pm.environment.set("productID", "jsonData.id");先设置变量环境
4.tests["验证productid"]=jsonData.id== 验证
5.pm.environment.get("productID");最后设置变量环境
- 
删除 
3026==》url==》headers(authorization--JWT(getToken))
code=204
tests:
pm.test("Status code is 204", function () {
pm.response.to.have.status(204);
}); 删除不用定义一个变量来存放响应数据 直接填验证协议状态码
- 
修改 
3033==》url==》headers(authorization--JWT(getToken))
code=200
tests:
1.pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
}); 修改不用定义一个变量来存放响应数据 直接填验证协议状态码
2.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
3.tests["验证产品信息ID"]==jsonData.id== 验证产品ID
4.pm.environment.get("productID"); 获取环境变量
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号