jmeter 使用random函数多线程运行时数据不会随机变化?

本文探讨了在多线程环境中遇到的random函数只生成唯一数值的问题,原因是用户定义变量的全局性导致random函数仅执行一次。解决方案是将随机函数移到请求参数中,确保每次调用时重新生成编号。此问题对于理解和处理多线程中的变量可见性和并发控制具有参考价值。

今天在做练习的时候遇到了一个问题,使用一个random函数最为编号进行注册功能的时候,第一次是能够跑得通,但是使用多线程的时候,就会发现报错,提示编号已存在

 使用debug sampler 查看发现在三次运行时,num值一直没有变化,也就是random函数只运行了一次,第二次使用时仍旧使用第一次的值

 找了很久的原因,终于发现问题出在用户定义变量中,因为用户定义变量是一个全局变量,而random函数如果设定在这里面的话,那么也会被认定为是一个全局变量,也就是整个运行都只会进行一次随机。

 解决方案:

        将随机函数直接抛出,放在请求参数中即可

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

佛系的老肖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值