在所有线程中使用相同的随机变量
Use same random variable in all threads
我有测试计划:
线程组(用户 3,循环 2)
随机变量
HTTP 请求
我希望每个循环只更改变量,因此在每次迭代中所有三个线程都应发送相同的值。
所以我想要这样的东西:
request where random var = X
request where random var = X
request where random var = X
request where random var = Y
request where random var = Y
request where random var = Y
我尝试了很多解决方法,但找不到合适的解决方案。
P.S。我不想从文件中读取变量。我需要生成它们
无论您“想要”什么,最好的选择是在“主”线程组的 setUp Thread Group and writing it to the file and then using CSV Data Set Config 某处预先生成随机值以读取值。
但是,如果这仍然不是您“想要”的东西,这里还有另一种“解决方法”,希望它对您来说足够“合适”:
添加 JSR223 PreProcessor 作为您“想要”使用随机变量参数化的请求的子项
将以下代码放入“脚本”区域:
if (props.get('foo_' + vars.getIteration()) != null {
props.put('foo_' + vars.getIteration(), org.apache.commons.lang3.RandomUtils.nextInt(0, 100))
}
在需要时使用以下 __groovy() function 引用“生成的”随机值:
${__groovy(props.get('foo_' + vars.getIteration()),)}
演示:
我有测试计划:
线程组(用户 3,循环 2) 随机变量 HTTP 请求
我希望每个循环只更改变量,因此在每次迭代中所有三个线程都应发送相同的值。
所以我想要这样的东西:
request where random var = X
request where random var = X
request where random var = X
request where random var = Y
request where random var = Y
request where random var = Y
我尝试了很多解决方法,但找不到合适的解决方案。
P.S。我不想从文件中读取变量。我需要生成它们
无论您“想要”什么,最好的选择是在“主”线程组的 setUp Thread Group and writing it to the file and then using CSV Data Set Config 某处预先生成随机值以读取值。
但是,如果这仍然不是您“想要”的东西,这里还有另一种“解决方法”,希望它对您来说足够“合适”:
添加 JSR223 PreProcessor 作为您“想要”使用随机变量参数化的请求的子项
将以下代码放入“脚本”区域:
if (props.get('foo_' + vars.getIteration()) != null { props.put('foo_' + vars.getIteration(), org.apache.commons.lang3.RandomUtils.nextInt(0, 100)) }
在需要时使用以下 __groovy() function 引用“生成的”随机值:
${__groovy(props.get('foo_' + vars.getIteration()),)}
演示: