有以下要求:
从这里我使用正则表达式提取器提取以下字符串:
%5B1172%2C63%2C61%2C66%2C69%2C68%5D
我使用urldecode函数对此进行解码:$ {__ urldecode($ {Groups_g2})}
解码:[1172,63,61,66,69,68]
在以下请求中,我想使用BeanShell PreProcessor提取值以获取如下所示的参数列表:
我知道我必须使用sampler.addArgument,但我无法计算如何从列表中提取数据并将值作为参数添加。
答案 0 :(得分:3)
尝试以下方法:
${__urldecode(${Groups_g2})}
放入Beanshell PreProcessor' Parameters
输入字段在Script
区域
String params = Parameters.substring(1, Parameters.length() - 1); // remove square brackets
int counter = 1;
for (String param : params.split(",")) {
sampler.addArgument("parameter" + counter, param);
counter++;
}
我不知道参数名称需要看起来像什么,希望以上信息会有所帮助。
没有参数的HTTP请求:
Beanshell PreProcessor
有关Apache JMeter中Beanshell脚本编写的更多信息,请查看H ow to use BeanShell: JMeter's favorite built-in component指南。