随机数

2019-06-26  本文已影响0人  水岩

随机数如下:

{{$guid}}:添加一个V4风格GUID(如: aa002-44ac-45ca-aae3-52bf19650e2d)

{{$timestamp}}:将当前的时间戳,精确到秒

{{$randomInt}}:添加0和1000之间的随机整数

随机抽取数组中的值

const randomInt = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min; // 随机整数

const charsInName = ['赵', '钱', '孙', '李', '王', '张'];

const numOfChars = randomInt(2, 6);

let randomName = '';

for (let i = 0; i < numOfChars; i++) {

  let index = randomInt(0, 5);

  randomName += charsInName[index];

}

environment.randomName = randomName;

随机

让请求参数有点变化

// 如果想要0~1000的随机数,且不打算重用,参数里直接用Postman内建变量`{{$randomInt}}`就行

// 否则自己实现:

constrandomInt=(min,max)=>Math.floor(Math.random()*(max-min+1))+min;// 随机整数

constgetRandomValue=list=>list[randomInt(0,list.length-1)];// 随机选项

例:

// 随机手机

environment.randomMobile=`18${randomInt(100000000,999999999)}`;

// 随机2-6字姓名

constcharsInName=['赵','钱','孙','李','王','张'];

constnumOfChars=randomInt(2,6);

letrandomName='';

for(leti=0;i<numOfChars;i++){

letindex=randomInt(0,5);

randomName+=charsInName[index];

}

environment.randomName=randomName;

// 随机设备token(推送服务商提供)

constchars=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'];

letdeviceToken='';

for(leti=0;i<64;i++){

deviceToken+=getRandomValue(chars);

}

environment.randomDeviceToken=deviceToken;

// 随机设备名

environment.randomDevice=getRandomValue(['ios','android']);

// 随机行政区划

constdivisions=['北京市','上海市','天津市','重庆市','广东省深圳市','广东省广州市','新疆维吾尔自治区克孜勒苏柯尔克孜自治州'];

environment.randomDivision=getRandomValue(divisions);

// 随机生日(时间戳)

// 假设今天是2017-1-1,距1970-1-1 47年,则生日范围为 1923-1-1 ~ 2017-1-1

environment.randomBirthday=randomInt(0-Date.now(),Date.now());

// 随机群名

constgroupNames=['犯罪团伙','Wearegay','`~!@#$%^&*()-_=+'];

environment.groupName=getRandomValue(groupNames)+randomInt(0,1000);

环境变量未定义就赋初始值

environment.XXX==null||environment.NAME=value;

// == null 匹配 null 和 undefined

// 通常避免 !environment.XXX 或 environment.XXX || ... 的写法,变量有可能是false, '', 0

同步等待

避免发送请求的速度比数据库更新速度快,造成误报

constsleep=(milliseconds)=>{

conststart=Date.now();

while(Date.now()<=start+milliseconds){}

};

// 就是限时的死循环,请用小一点的数字调试

// Postman是用JS写的,单线程异步,主线程被阻塞了就没法做其他操作

上一篇下一篇

猜你喜欢

热点阅读