如何在JMeter中的JDBC请求采样器中使用FOrEach循环和正则表达式提取器

0 jmeter

我已经配置了与mysql的JDBC连接.
我添加了JDBC采样器和监听器.
但我想用正则表达式提取器提取细节,然后进入foreach循环.
在ForEach循环中,我想执行HTTP请求.

我的结果窗口如下:

empid   empname empDesgination
10          lee     jrtester
10          lee     MURAEE
123         lee     MURAEE
1234567890  leeee   MURALEE
1234567890  lee     MURALEE
Run Code Online (Sandbox Code Playgroud)

请解释以下几点:

  • 如何编写正则表达式提取器(即正则表达式)?
  • 如何从中提取?
  • 我应该在ForEach循环输入变量和输出变量中输入什么?

因为,根据提供的信息,我已经处理了JDBC,但它没有提取数据并进入循环.请你解释一下我们编写的Exactly Regex表达式来提取上述数据.我们${VAR_out}为Http请求采样器提供引用名称.请使用Regex,ForEach和Http Sampler向我展示全部流程.

请给我一个关于JDBC采样器的简单示例使用正则表达式提取器提取数据并进入ForEach循环.

小智 5

我最近解决了这个问题,请尝试以下步骤:

  1. 创建HTTP请求以下拉响应数据
  2. 创建一个正则表达式提取器作为HTTP请求的子项.并设置以下内容
    • 设置您的引用名称(稍后在脚本中成为变量名称)
    • 设置你的正则表达式(这里有一些很好的帮助:http://jmeter.apache.org/usermanual/regular_expressions.html)
    • 设置模板(再次查看上面的网址以获取模板信息)
    • 将匹配编号设置为-1(这允许您将所有捕获的结果保存到一个变量)
  3. 现在在HTTP Sample下面创建一个ForEach控制器,将'输入变量前缀'设置为您给出正则表达式提取器的参考名称,将'输出变量名称'设置为您喜欢的任何内容(类似于tmpvar),然后选中'Add"_"号码'复选框
  4. 在ForEach控制器下创建一个HTTP请求,并使用varibale $ {tmpvar}设置Server或Path,并且应该为找到的正则表达式提取器的每个命中运行HTTP请求.