jmeter的参数化如何设置让随机变量跟随 线程组/线程/每个请求 变化?

不知道各位小伙伴在使用jmeter的参数化时,有没有遇到过以下问题?
明明想让单个线程的所有"使用了同一个随机变量"的请求都使用相同的值,结果每一个请求的随机变量值都是不同的?
明明想让每一个线程的随机变量值都是不同的,却所有线程的随机变量值都是相同的?
……
下面来说一下,如何达到自己想要的效果

第一种:随机变量跟随线程组变化
以下为"一个线程组启动了2个线程"的情况:
第一个线程

第二个线程

可以看到启动了2个线程,并且这两个线程的请求使用的随机变量值是相同的(即变量是跟随着线程组变化,每次启动线程组,随机变量只会生成一次)

那么如何实现?
线程组→添加→配置元件→用户定义的变量

线程组结构如下图:

请求中的参数:

第二种:随机变量跟随请求变化
以下为"一个线程组启动了2个线程,每个线程发送两个请求"的情况:
第一个线程的第一个请求

第一个线程的第二个请求

 

第二个线程的第一个请求 

第二个线程的第二个请求

可以看到,每个请求使用的随机变量的值都是不同的(即随机变量跟随请求变化,有多少个请求随机变量就生成多少次值)

如何实现?
线程组→添加→前置处理器→用户参数

线程组结构如下图:

 第三种:随机变量跟随线程变化

以下为"一个线程组启动了2个线程,每个线程发送两个请求"的情况:
第一个线程的第一个请求

第一个线程的第二个请求

第二个线程的第一个请求 

第二个线程的第二个请求

可以看到,每单个线程下的所有请求,使用的随机变量值都是相同的(即随机变量跟随线程变化)

 如何实现?
线程组→添加→前置处理器→用户参数
(其实就是在用户参数中勾选了"每次迭代更新一次")

线程组结构如下图:

 
结语:
以上就是我自己在进行参数化时遇到的一些坑从而总结出的经验,如果对你也有帮助的话,可以收藏点个赞,有不对的地方欢迎指出!


版权声明:本文为softtest_ge原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。