Tests
文档示例 https://learning.postman.com/docs/writing-scripts/script-references/test-examples/ 语法 https://www.chaijs.com/api/bdd/
//判断列表对象中的时间字段在某个范围
pm.test("create_time between ('2020-05-01','2020-05-24')", function () {
var jsonData = pm.response.json();
jsonData.data.list.find(function(m){
pm.expect(new Date(m.create_time)).to.within(new Date('2020-05-01 08:00:00'),new Date('2020-05-25 08:00:01'));
}
);
});
//判断列表对象中搜索字段是否包含搜索内容
pm.test("搜索公司名称是'嘉鸿'", function () {
var jsonData = pm.response.json();
jsonData.data.list.find(function(item){
pm.expect(item.company_name).to.contain('嘉鸿');
});
});
//判断列表对象是否等于某几个值之一
pm.test("公司类型 = '1' || '2'", function () {
var jsonData = pm.response.json();
jsonData.data.list.find(function(m){
pm.expect(m.company_type).to.eq('1') || pm.expect(m.company_type).to.eq('2');
}
);
});
//判断数组长度最大不超过N
pm.test("最多5条记录", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.data.list).to.have.lengthOf.at.most(5);
});
Pre-request Script
//获取请求参数
const param = pm.request.body.urlencoded.toObject();
//参数正序
function paramSortAsc(param){
const res = {};
const paramKeys = Object.keys(param).sort();
for (let k of paramKeys) {
res[k] = param[k]
}
return res
}
//md5
const md5 = CryptoJS.MD5(data).toString()
//base64
const base64 = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(data)
//urlencode
const urlencode = encodeURIComponent(data)
//增加xdebug调试
pm.request.url.query.append({"key":"XDEBUG_SESSION_START","value":1})