postman --不同参数化方式
2021/11/16 23:15:13
本文主要是介绍postman --不同参数化方式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
postman参数化
- 一、自带三个内建变量(系统变量)
- 二、Pre_request_scripts写脚本
- 1.接口运行时的顺序
- 2. 实现方法
- 3.常用功能
- 三、csv文件\json格式文件实现参数化
一、自带三个内建变量(系统变量)
1.{{$guid}}//生成随机GUID
2.{{$timestamp}}//当前时间戳
3.{{$randomInt}}//0-1000的随机整数
问题:内建变量不能进行精确对比
二、Pre_request_scripts写脚本
1.接口运行时的顺序
1.Pre-request Script是集合中请求发送之前需要执行的代码片段
2.请求参数中包含一个随机数或者请求header中包括一个时间戳,或者你的请求参数需要加密
3.先运行Pre-request Script内的函数,再发送请求,最后识别tests中的断言
2. 实现方法
1.在Pre-request Scrip定义一个获取当前时间戳的函数,设置为全局变量
2.在tests中设置断言,实现获取随机变量的标题的功能
3.得出判断结果,输出测试用例结果
3.常用功能
// 当前时间戳 var now_time = Date.now(); pm.globals.set("now_time", now_time); // guid实现: const guid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx' .replace(/x/g, () => (Math.floor(Math.random() * 16)).toString(16)) .replace(/y/g, () => (Math.floor(Math.random() * 4 + 8)).toString(16)); pm.globals.set("guid_value", guid); // 随机整数实现: const randomInt = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min; pm.globals.set("random_number", randomInt(8, 14)); // 从多个选项中选择实现: const getRandomValue = list => list[randomInt(0, list.length - 1)]; const charsInName = ['王','李','张']; pm.globals.set("people_name",getRandomValue(charsInName) ); // 随机手机号实现: var mobile_num = `18${randomInt(300000000, 399999999)}`; pm.globals.set("mobile_num",mobile_num); const sleep = (milloiseconds) => { const start = Date.now(); while (Date.now() <= start + milloiseconds) {} }; sleep(5000); //毫秒为单位
三、csv文件\json格式文件实现参数化
csv文件要在Collection Runner中工作, 第一行必须是在request中要使用的变量名,
每一行是一条用例, 并表示一次迭代。
json文件你需要确保你的文件有键/值对数组。 数组中的每个元素是键值对对象, 代表
一次迭代。 key作为request中要使用的变量名, value作为key
3.1 CSV
3.2 JSON
注意:设置迭代次数超过当前文件中的行数,那么超过的数据会重复使用最后一行的数据
学IT,上博学谷
https://m.boxuegu.com/inviteShare/invited?id=8a2c9bed6aa1c063016ab53099d00037&source=1&from=singlemessage
这篇关于postman --不同参数化方式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现
- 2024-05-30我们小公司,哪像华为一样,用得上IPD(集成产品开发)?
- 2024-05-30java excel上传--poi
- 2024-05-30安装笔记本应用商店的pycharm,再安排pandas等模块,说是没有打包工具?
- 2024-05-29java11新特性
- 2024-05-29哪些无用敏捷指标正在破坏敏捷转型?
- 2024-05-29鸿蒙原生应用再新丁!新华社 入局鸿蒙
- 2024-05-29设计模式 之 迭代器模式(Iterator)