接口测试工具-Postman之一(补充篇“参数预处理”)

在执行接口时的数据的参数化,参数数据获取的方式:
1、从环境变量中获取,
2、从本地文件中获取,
3、从预处理脚本中获取,
不同的场景需要做不同的处理,从变量中获取到数据不需要处理直接使用,可以用前面的两种方式,但有些数据需要做再次处理,那就需要第三种方式。前两中情况在前面已经介绍,这里做个补充介绍从预处理脚本中获取。就是以下面的接口为例:
接口headers中的参数:operator、randomstr、timestamp、encode;其中operator是静态的可以直接在环境变量epass中定义;但randomstr、timestamp、encode是动态的,这就需要在执行接口前进行定义处理,那就是预处理“Pre-request Script”。
Pre-request Script,使用的是javaScript脚本语言:

在这里插入图片描述
具体代码如下:


/**
* 产生随机整数,包含下限值,但不包括上限值
* @param {Number} lower 下限
* @param {Number} upper 上限
* @return {Number} 返回在下限到上限之间的一个随机整数
*/
function random(lower, upper) {
return Math.floor(Math.random() * (upper - lower)) + lower;
} 
randomstr = random(10000000,99999999);
console.log(randomstr);
pm.environment.set("randomstr", randomstr);

//十三位毫秒时间戳
// timestamp = new  Date().getTime(); 
//时间格式化yyyyMMddhhmmss
// # 方法1
// var myDate=new Date();
// var year = myDate.getFullYear();
// var month = myDate.getMonth();
// var date = myDate.getDate();
// var hours = myDate.getHours();
// var min = myDate.getMinutes();
// var seconds = myDate.getSeconds();
// hours = hours < 10 ? "0" + hours : hours;
// min = min < 10 ? "0" + min : min;
// seconds = seconds < 10 ? "0" + seconds : seconds;
// var date = year + "" + month + date + hours + min + seconds;
// console.log(date,"测试");
 
// #方法2
var moment = require('moment');
var timestamp = moment().format("YYYYMMDDHHmmss");
console.log(timestamp);
pm.environment.set("timestamp",timestamp);

//encode:将请求的(operator+randomstr+timestamp+鉴权用户密码)(不含括号)进行字符串连接,然后按照MD5算法计算摘要并转成大写
var operator = pm.environment.get("operator");
str = operator+randomstr+timestamp+"1234567890123456";
console.log(str);
encode = CryptoJS.MD5(str).toString().toUpperCase();
console.log(encode);
pm.environment.set("encode",encode);

在预处理定义后可以像引用变量一下引用参数
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值