Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何在JMeter中使用正则表达式提取器来填充循环中的请求_Regex_Jmeter_Extractor - Fatal编程技术网

Regex 如何在JMeter中使用正则表达式提取器来填充循环中的请求

Regex 如何在JMeter中使用正则表达式提取器来填充循环中的请求,regex,jmeter,extractor,Regex,Jmeter,Extractor,我有一个简单的测试计划: Jdbs Conection JDBC request For Each Loop on jdbc response |-Regular Expression Extractor (Post processor) |-Soap Request where I need extracted value from Regular Expression Extractor |-Response assertion Jdbs连接 JDBC请求 对于jdbc响

我有一个简单的测试计划:

Jdbs Conection JDBC request For Each Loop on jdbc response |-Regular Expression Extractor (Post processor) |-Soap Request where I need extracted value from Regular Expression Extractor |-Response assertion Jdbs连接 JDBC请求 对于jdbc响应上的每个循环 |-正则表达式提取器(后处理器) |-需要从正则表达式提取器中提取值的Soap请求 |-响应断言 问题在于何时执行第一个循环。SOAP请求由正则表达式提取器中变量的名称而不是值填充。有人能告诉我如何避开这个问题吗

[编辑]测试计划屏幕

正如您在第一幅图上看到的,它显示了jdbc响应数据。在第一个位置上是值'22;1'. 第二个是显示第一个soap请求失败,不是一个值,而是变量的名称。。。第三个是显示第二个请求已正确填写

下面是我为每个循环添加调试采样器时的屏幕。在这种情况下,第一个SOAP请求被正确地填充

我的问题是如何获得与第二种情况相同的行为,但不添加调试采样器


顺便说一句,很抱歉外部服务器上的图像,但我的排名太低,无法将它们添加到此处

您的测试计划应采用所附快照中提到的格式:


希望这将有助于粘贴变量分配和测试计划的快照。如果变量包含变量名,则提取器无法找到匹配项。请显示您在regex提取器的配置字段中输入的内容,否则screenshotsIt不是合适的解决方案,因为对于每个循环,应该在“req”响应的行上进行,并提取下一个值。这个值应该用来填充soap请求。在您的解决方案中,我将只提取第一行,或者我不明白……如果您希望每个请求的值都不同,那么在正则表达式提取器中将匹配号设置为“0”。这将随机更改每个请求的值。或者,如果希望值按顺序更改,则需要使用Beanshell编写一些代码来实现这一点。