我想在帖子请求中添加2种参数。
从http请求中我提取了2个变量列表:
Order_id = input type="hidden" name="(drag.+?)" value="(\d+?)"
Weight_id = class="draggableviews-weight form-select" id=".+?" name="(drag.+?)"
在随后的Post Request中,我需要重新发布所有这些变量。我为此使用BeanShell PreProcessor
。第一个列表没有问题,因为它获得相同的值。第二个列表应该在-50和50之间得到一个新的随机值。我还希望每次迭代都有一个不同的随机值。
我该怎么做?
如果我使用Random Variabele Config Element,我会为每个varbele获得相同的随机int。我希望每次迭代都有不同的一个。
答案 0 :(得分:2)
我建议使用像
这样的ThreadLocalRandom.nextInt()方法sampler.addArgument(name2, String.valueOf(java.util.concurrent.ThreadLocalRandom.current().nextInt(-50, 51)));
不要将JMeter Functions内联到Beanshell脚本中,要么通过"参数"部分并通过Parameters
或args
缩写或使用适当的基于代码的替换进行引用。
有关JMeter测试中Beanshell脚本的详细信息,请参阅How to Use BeanShell: JMeter's Favorite Built-in Component指南。
答案 1 :(得分:0)
To retrieve multiple values from single Regular Expression Extractor, we use Templates as follows:
In the image, you can see that link
is Reference Name
and there is only match found with the regular expression.
number of matches is : link_matchNr
first group value : link_1_g1
second group value : link_1_g2
Note: The regular expression I tried on is google.com, you can also simulate the same as follows:
Use Random function as follows:
value2 = ${__Random(-50,50)};
log.info("valuee2 " + value2);
Output Variable
in Beanshell Preprocessor as follows:value2 = vars.get("randomInt");