首页 > 其他分享 >postman 常用脚本

postman 常用脚本

时间:2023-07-26 12:12:14浏览次数:31  
标签:脚本 function 常用 set postman arr var data pm

1.登录成功之后,在header中获取cookie,并设置成环境变量 //获取cookie值 var jsondata = postman.getResponseHeader("set-cookie"); console.log(jsondata) //设置成环境变量 data = jsondata.split(";")[0]; data = data.split("=") console.log(data) postman.setEnvironmentVariable("Cookie_name",data[0]); postman.setEnvironmentVariable("Cookie_value",data[1]);
  2.操作时间,并将时间设置为环境变量 var moment = require('moment');  var ctime = moment().format(" YYYYMMDDHHmmss"); var cjia1=moment(new Date().getTime()+3600*1000*24).format('YYYY-MM-DD HH:mm') var cjia2=moment(new Date().getTime()+3600*1000*24).format('YYYY-MM-DD') var cjia3=moment(new Date().getTime()+3600*1000*24*3).format('YYYY-MM-DD HH:mm')
pm.environment.set('name', ctime);  pm.environment.set('zhuanghuo', cjia1);  pm.environment.set('sendtime', cjia2);  pm.environment.set('xiehuo', cjia3);      3.定义列表,并随机获取列表中的数据,设置为环境变量
var arr = ['管理员', '李新','赵本存','赵本林','高伟人','齐丽娅','袁志佳','唐作田','邓树健','韩丽洁','刘大磊']; var index = Math.floor((Math.random()*arr.length)); postman.setEnvironmentVariable('People',arr[index]);   4.断言 (1)响应为text格式的断言 pm.test("测试某个页面的功能是否正常", function () {   var body = pm.response.text(); var title =  body.match(/<提取字段之前的内容>(.*?)<\/提取字段之后的内容>/)[1]; var a='预期值' pm.expect(title).to.eql(a); });       (2)响应为json格式的断言 pm.test("app登录", function () {     c=pm.response.json()     b=c['code']     username=c['data']['username']     tests[username]=true   //设置环境变量,下一个接口调用     pm.environment.set("username1", username);     pm.expect(b).to.eql(200) }); (3)对结果进行分析判断 pm.test("添加采购单", function () { var jsonData = pm.response.json(); if(jsonData.data[0].msg="添加采购单成功!"){     pm.expect(jsonData.data[0].success).to.eql(true);
} else if (jsonData.data[0].msg="库存不足!"){   console.log('不存不足')
} else{  pm.expect(jsonData.success).to.eql(true); } }); 5.获取响应body中的最大值(最大id) //提取出响应体中所有的id
function value(x){ var body = pm.response.text(); supplyid1=String(body.match(x)); supplyid = String(supplyid1.match(/\d+/g)); s=supplyid.split(","); return s } //遍历列表,并提取最大值
function unique(arr) {     if (!Array.isArray(arr)) {         console.log('type error!')         return     }     var array =[];     for(var i = 0; i < arr.length; i++) {             if( !array.includes( arr[i]) ) {//includes 检测数组是否有某个值                     array.push(arr[i]);               }     }     // tests[array]=true         a=Math.max.apply(null,array);     tests[a]=true          return a }   var arr=value(/"id":\d+,"/g) pm.environment.set("shigognduiId", unique(arr)); 6.随机生成时间戳   var times = Date.now().toString(); pm.environment.set('timestamp', times);  7.预置脚本中,提前发送请求(post) //获取collection中的变量 url =    pm.collectionVariables.get("url_ynl");   function denglu(phone){     const request1 = {     url:url+'path',     method: 'POST',     header: 'application/x-www-form-urlencoded; charset=UTF-8',     body: {         mode: 'urlencoded',       urlencoded:'mobile_number='+phone+'&mobile_code=888&session_key=&AutoLogin=true'        } };      pm.sendRequest(request1, function (err, response) {         console.log(response.json()); }); } denglu('15555555555') 8.循环发送get请求 for(i=0;i<=Pagecount;i++){         function denglu(){     const request1 = {     url:url+'pathList/'+i,     method: 'GET',     // 请求体     };      pm.sendRequest(request1, function (err, response) {         a= response.text();         console.log(a) }); } } 9.生成最大最小值,设置环境变量 function getRandomInt(min,max){                 var num= Math.floor(Math.random()*(max-min+1))+min;                 return num                             } pm.environment.set("randomnum", getRandomInt(5,18));

标签:脚本,function,常用,set,postman,arr,var,data,pm
From: https://www.cnblogs.com/tengyun99/p/17582136.html

相关文章

  • vue : 无法加载文件 C:\Users\jianfei\AppData\Roaming\npm\vue.ps1,因为在此系
    背景在新电脑上配置vue环境PSE:\CODE_PROJ\myvue\vue23\P61_使用脚手架\vue_test>npminstall-g@vue/[email protected]:Seehttps://github.com/lydell/source-map-url#[email protected]:Pleaseseehttps://github......
  • .NET 十个常用的组件库
    前言分享一下本人一直在用的十个组件库:一、AutoMapperAutoMapper是一个对象映射工具,用于简化.NET应用程序中不同类型对象之间的转换和映射。功能:AutoMapper提供了自动化的对象映射功能,可以将一个对象的属性值自动映射到另一个对象的对应属性上,无需手动编写大量的赋值代码。用......
  • python调用shell脚本并传递参数
    Python调用Shell脚本并传递参数作为一名经验丰富的开发者,我将教会你如何使用Python调用Shell脚本并传递参数。这个过程可以分为以下几个步骤:步骤描述步骤1编写Shell脚本步骤2在Python中调用Shell脚本步骤3传递参数给Shell脚本下面我将逐步介绍每个步骤......
  • Ubuntu 完全卸载软件常用命令
    https://www.xjx100.cn/news/548949.html?action=onClick 一、软件查看信息相关命令1、查看安装的软件dpkg-l#查看系统所有安装的软件dpkg-l|grepxxx#查看安装的指定软件,xxx为软件名称,例如nginx2、查看软件版本dpkg-l|grepxxx......
  • Vue 常用属性汇总
    1、Vue实例常用属性(1)数据data:Vue实例的数据对象components:Vue实例配置局部注册组件(2)类方法computed:计算属性watch:侦听属性filters:过滤器methods:Vue实例方法render:渲染函数,创建虚拟DOM(3)生命周期created:在实例创建完成后被立即调用,完成初始化操作mounted:el挂载到Vue实......
  • 请简述常用的索引有哪些种类?
    请简述常用的索引有哪些种类?1.普通索引:即针对数据库表创建索引2.唯一索引:与普通索引类似,不同的就是:MySQL数据库索引列的值必须唯一,但允许有空值3.主键索引:它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引4.组合索引:为了进一步榨取M......
  • CentOS/RHEL常用命令
    查看Linux的版本cat/etc/system-release查看所有进程psaux查到进程号后终结该进程 kill-9进程号cd-返回上次所在目录(这个应该很实用,O(∩_∩)O哈哈~)sudo-i sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如hal......
  • vba-常用代码记录
    一些代码优化:1.Range("B5:C6").CopyDestination:=Range("B8")2.使用mid$函数而不是mid3.把整个sheet保护,需要操作时,后台先关闭保护。4.Excel中自带的Sum函数是将整个区域转换为数组,在内存中进行求和,速度快多了。DimresultAsDoubleresult=Application.Worksh......
  • Linux系统常用操作命令归纳整理
    操作分类命令查看ls      ls-l(以列表形式显示,容量为B) ls-l(以列表形式显示,容量为B)ls-a(显示隐藏目录)ls-lh(以列表形式显示,容量为KB)ls-i(显示文件id)清屏 clear    /    热键ctrl+L补全文件/查询命令热键tab取消当前指令/结束程序热键ctrl+c切换......
  • 使用 bat 脚本调用 powershell 脚本时遇到的问题
    如果powershell脚本中,有一些涉及相对路径的操作,会发现这样运行的powershell并不是在期望的目录中,需要重新设置一下当前工作目录:powershell-CommandSet-Location-LiteralPath"%cd%";".\test.ps1"通过Set-Location命令即可实现此需求。参考:https://stackoverflow.co......