postman断言之常用函数

Posted shishibuwan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postman断言之常用函数相关的知识,希望对你有一定的参考价值。

1、设置全局变量与环境变量

postman右侧函数

Setting an environment variable:pm.environment.set("variable_key", "variable_value");
Set a global variable:pm.globals.set("variable_key", "variable_value");

技术图片

 

var jsonData = JSON.parse(responseBody); //获取json格式的返回值
pm.globals.set("totalCountBeforeMerged", jsonData.data.totalCountBeforeMerged); //将json格式下某个字段值给全局变量
pm.environment.set("totalPageNum", jsonData.data.totalPageNum);//将json格式下某个字段值给环境变量

 

2、引用变量--双{{}}进行变量的引用

技术图片

技术图片

 

技术图片

 

 

postman自带的三个全局变量说明:

$guid :
在运行时产生一个全球唯一标识码。可以用来产生唯一的不重复的编号。

$randomInt :
在运行时产生一个0 -1000 的随机整数。

$timestamp:
在运行时生成当前时间的时间戳。从1970年1月1日 00:00:00 开始的秒数。

3、接口返回状态检查以及body里字符串检查

 技术图片

 

pm.test("返回200", function () 
    pm.response.to.have.status(200);
);
pm.test("返回值包含postman", function () 
    pm.expect(pm.response.text()).to.include("postman");
);

//源码
pm.test("Status code is 200", function () 
    pm.response.to.have.status(200);
);
pm.test("Body matches string", function () 
    pm.expect(pm.response.text()).to.include("postman");
);

 

4、boss直聘搜索

https://www.zhipin.com/job_detail/?query=软件测试&city=101280600&industry&position

// header参数

host: www.zhipin.com
referer:http://www.zhipin.com/
cache-control: max-age=0
connection: keep-alive
Upgrade-Insecure-Requests: 1
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/61.0.3163.100 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8

技术图片

技术图片

 

pm.globals.get("query");
pm.globals.get("scity");
pm.test("有这个公司的招聘记录", function () 
    pm.expect(pm.response.text()).to.include("软通动力");
);

 

5、响应时间校验

技术图片

pm.test("有这个公司的招聘记录", function () 
    pm.expect(pm.response.text()).to.include("软通动力");
);

tests["有这个公司的招聘记录"]=responseBody.has("软通动力");


pm.test("响应时间小于 200ms", function () 
    pm.expect(pm.response.responseTime).to.be.below(200);
);

6、主要函数参数汇总

  获取json数据对象:var data =JSON.parse(responseBody);

  获取json中的某个值:var value =data.value   (注:value中有多组可以用data.value[0].value获取value中第一组的value的值)

  查看json的programs中有几组数据:data.programs.length=== 5

  获取响应返回值:varCode= responseCode.code

 获取相应时间:var time=responseTime

 判断响应数据中是否包含某个值:responseBody.has("true")

 检查点(断言):tests["Body matches string"]=responseBody.has("响应数据json的任意值 ");

 7、Json格式获取与断言

技术图片

技术图片

var result = JSON.parse(responseBody);
 if(result.retCode==‘0‘)
        tests["测试通过")"]=true;
    else
        tests["测试失败"]=false;
   

 

以上是关于postman断言之常用函数的主要内容,如果未能解决你的问题,请参考以下文章

Postman系列之Tests断言

postman断言分析

postman断言内容详解

postman响应断言

常用的 74个内置函数

Jenkins+Postman+Newma+Xmysql之API全自动化测试