我们如何从jMeter中的选定值传递随机值?

fdx2calv  于 2022-11-09  发布在  其他
关注(0)|答案(3)|浏览(174)

我想把一些参数传递给我的请求主体。我不想发送随机字符串。但是我需要传递选定值中的随机值。例如;我有5个值,比如说value 1,value 2,value 3,value 4,value 5。我需要传递这5个值中的随机值。我该怎么做呢?有什么建议吗

f4t66c6m

f4t66c6m1#

"简单的方法"
您可以使用JMeter Plugins提供的chooseRandom函数
"艰难的路"
使用Beanshell预处理器获取随机值,如下所示:
1.将Beanshell预处理器添加为请求的子级,您需要随机化哪个参数
1.将您的value1,value2,value3,value4,value5输入到预处理器的“参数”输入中
1.将以下代码放入预处理器的“脚本”区域

String[] params = Parameters.split(",");
Random random = new Random();
String randomValue = params[random.nextInt(params.length)];
vars.put("randomValue", randomValue);

1.如有需要,将生成值表示为${randomValue}
请参见以下参考信息
1.简易方式:Installing JMeter Plugins
1.硬方式:How to use BeanShell: JMeter's favorite built-in component

a0x5cqrl

a0x5cqrl2#

假设你有一个变量foo,它可以是abc,你想让采样器从这个集合中选择一个随机值。
创建用户定义变量foo1=a foo2=b foo3=c
然后,在您的http请求默认值中使用以下内容:
${__RandomFromMultipleVars(foo1|foo2|foo3)}
瞧,统一的随机选择,不需要脚本或插件
编辑:如果您正在使用javascript,请考虑以下一行代码:${__javaScript(Array("a"\, "b"\, "c")[Math.floor(Math.random()*3)])} ^^创建一个包含三个元素的数组,并从其中返回一个随机元素。没有变量,没有问题:)

n3schb8v

n3schb8v3#

如何传递特定值而不是随机值,即对于动态值,我们如何实现这一点

相关问题