我需要在HTTP请求中使用来自RDBC请求的数据。在提出这个问题之前,我先阅读了以下主题:
但我仍然不知道如何做到这一点。
测试结构:
JDBC Connection Configuration
JDBC Request
ForEach Controller
BeanShell Sampler
HTTP Request
我的步骤:
使用 BeanShell Sampler :
解析变量中的数据String yearsRange = vars.get("years1"); String year =
yearsRange.split("-")[1];
String ElementsStr = vars.get("elements1"); String element =
ElementsStr.split(" ")[1];
vars.put("year", year);
vars.put("element", element);
现在我用参数创建HTTP请求:
year ${year};
element ${element};
我知道问题出在 ForEach Controller (如果我设置了一个变量,一切正常)但我不知道如何让它与2个或更多变量一起工作。
请告诉我我做错了什么?
答案 0 :(得分:1)
使用Counter配置元素或__counter()函数迭代第二个变量,如:
我认为你不需要Beanshell Sampler,因为JDBC Request会以ForEach Controller可以使用的形式返回结果变量,例如:
var_1=foo
var_2=bar
anothervar_1=baz
anothervar_2=somethingelse
有关详细说明,请参阅Debugging JDBC Sampler Results in JMeter指南。