参数关联:
上一个接口返回token,如何传到下个接口中?
则需要写后置脚本来获取
1、打开登录接口,在Tests区域编写javasscript脚本解析返回response对象,从json里面提取token并设置为环境变量
//Response解析json
jsonData = pm.response.json();//设置为环境变量
pm.environment.set(“token”,jsonData.token);
2、console调试脚本
console.log(jsonData);
connsole.log(jsonData.token);
3、引用变量
{{token}}
4、其他变量设置
1)使用pm.globals来定义一个全局变量
pm.globals.set("variable_key","variable_value");
2)使用pm.collectionVariables来定义集合变量
pm.collectionVariables.set("variable_key","variable_value");
3)使用pm.environment来定义环境变量(在当前选中的环境)
pm.environment.set("variable_key","variable_value");
4)可以unset删除变量
pm.environment.unset("variable_key");
5)部变量是您使用一下语法在请求脚本中设置的临时值
pm.variables.set("variable_key","variable_value")
5、可以在脚本中使用变量
可以使用表示范围级别和.get方法的对象在脚本中检索变量当前的值:
pm.variables.get("variable_key");
pm.globals.get("variable_key");
pm.collectionVariables.get("variable_key");
pm.environment.get("variable_key");
获取响应体的cookie 中的 sessionId 值
// 获取返回的cookies
sessionId = postman.getResponseCookie("sessionId").value
console.log(sessionId);
获取返回头部Headers中的值
// 获取返回的cookies
server = postman.getResponseHeader("Server")
console.log(server);
6、断言
断言相等 .to.equal()
断言字符长度 .to.lengthOf()
//校验code为0
pm.test("response code must to be 0",function(){
pm.expect(pm.response.json().code).to.equal(0);});//校验msg为login success!
pm.test("response msg must to be login success!",function(){
pm.expect(pm.response.json().msg).to.equal(login success!);});//校验token 长度为40位
pm.test("response token length must to be 40",function(){
pm.expect(pm.response.json().token).to.lengthOf(40);});
校验状态码和返回头部
校验返回状态码是200,可以直接点击右侧快速生成代码
校验Content-Type在返回头部
校验返回的头部Content-Type值为 application/json
pm.test("Content-Type header is applicatin/json",()=>{
pm.expect(pm.response.heades.get('Content-Type')).toeql('application/json');});
断言返回值与变量相等
断言返回值username与环境变量username相等
pm.test("Response property matches environment vaiable",function(){
pm.expect(pm.response.json().uesrname).to.eql(pm.environment.get("username"));});
版权归原作者 王大大、 所有, 如有侵权,请联系我们删除。