Jmeter常用参数化技巧总结!

说起接口测试,相信大家在工作中用的最多的还是Jmeter。

JMeter是一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA 等多种协议。

在做接口测试时,根据不同的业务场景,经常需要对接口传参数,比如常见的GET、POST请求。为了模拟更真实的用户使用场景,在传参数时,需要采用动态的参数,比如每次调用接口时,需要传入当前的时间戳;每次查询商品信息时,传入一个随机的商品id等。这个时候就要用到Jmeter的参数化。下面来介绍下Jmeter常用的一些参数化方式:

1、随机值

在Jmeter的"函数助手"中,提供了随机数函数Random,可以产生一个指定范围的随机值。

配置上随机值的最小值和最大值,点击生成,就能产生一个随机数函数,并且已经拷贝到内存中,在需要使用参数化的地方直接粘贴即可。

2、随机字符串

在某些业务场景中,需要传入一个随机字符串,比如在注册信息时,需要传入一些个人简介,这个时候可以用随机字符串来代替。

在"函数助手"中,找到RandomString函数:

解释:

**Random string length:**生成的随机字符串长度;

**Chars to use for random string generation:**随机字符串从哪些字符中生成;

点击生成,拷贝到需要使用的地方即可。

3、时间戳

很多接口里经常需要传时间戳,并且要求是当前时间戳,在Jmeter的函数助手里,有专门的时间戳函数time

直接点击生成,就能产生一个时间戳函数,将它粘贴到对应的参数位置即可。

除了获取时间戳外,time函数还支持按照一定的格式去展示时间,比如"yyyy-MM-dd HH:mm:ss"。

yyyy:代表4位数的年份

MM:代表2位数的月份

dd:代表2位数的天数

HH:代表2位数的小时

mm:代表2位数的分钟数

ss:代表2位数的秒数

4、唯一字符串UUID

在很多业务场景中,接口需要传入一个唯一的,不重复的字符串,比如发送聊天消息接口,通常都有一个消息id,要求这个id不能重复,这个时候可以使用uuid来解决。

UUID是指在一台机器上生成的字符串,它保证对在同一时空中的所有机器上都是唯一的,具备唯一性。

Jmeter里提供了uuid函数,可以很方便的获取uuid。

好了,以上就是Jmeter里常用的一些参数化函数,Jmeter还支持很多其他的参数化方式,后续的文章会专门介绍下。

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
孟健2 小时前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞4 小时前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python
曲幽6 小时前
FastAPI压力测试实战:Locust模拟真实用户并发及优化建议
python·fastapi·web·locust·asyncio·test·uvicorn·workers
敏编程10 小时前
一天一个Python库:jsonschema - JSON 数据验证利器
python
前端付豪11 小时前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain
databook11 小时前
ManimCE v0.20.1 发布:LaTeX 渲染修复与动画稳定性提升
python·动效
花酒锄作田1 天前
使用 pkgutil 实现动态插件系统
python
前端付豪1 天前
LangChain链 写一篇完美推文?用SequencialChain链接不同的组件
人工智能·python·langchain
曲幽1 天前
FastAPI实战:打造本地文生图接口,ollama+diffusers让AI绘画更听话
python·fastapi·web·cors·diffusers·lcm·ollama·dreamshaper8·txt2img
老赵全栈实战1 天前
Pydantic配置管理最佳实践(一)
python