Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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
如何在JMeter中并行执行多组并行请求?_Jmeter - Fatal编程技术网

如何在JMeter中并行执行多组并行请求?

如何在JMeter中并行执行多组并行请求?,jmeter,Jmeter,我正在测试一个调用多组并行请求的应用程序,如下面的屏幕截图所示。此屏幕截图取自浏览器网络选项卡 请求顺序如下: 请求R1、R2和R3(组1)被并行调用 请求R1完成后,将并行调用请求R4、R5和R6(组2)。R4、R5和R6使用R1响应中的值 请求R2完成后,将并行调用请求R7、R8、R9和R10(组3)。R7、R8、R9和R10使用R2响应中的值 如何在JMeter中实现这一点 注意:我能想到的最好的方法是使用并行控制器的测试计划 但我认为这并不完全正确,因为这两个线程组彼此独立执行。第一

我正在测试一个调用多组并行请求的应用程序,如下面的屏幕截图所示。此屏幕截图取自浏览器网络选项卡

请求顺序如下:

  • 请求R1、R2和R3(组1)被并行调用
  • 请求R1完成后,将并行调用请求R4、R5和R6(组2)。R4、R5和R6使用R1响应中的值
  • 请求R2完成后,将并行调用请求R7、R8、R9和R10(组3)。R7、R8、R9和R10使用R2响应中的值
  • 如何在JMeter中实现这一点

    注意:我能想到的最好的方法是使用并行控制器的测试计划


    但我认为这并不完全正确,因为这两个线程组彼此独立执行。第一个线程组不会等到第二个线程组完成后再开始新的循环。

    我认为您需要将所有内容都作为单个并行控制器的子对象

    在线程池获取和执行调用时,
    limitmax thread number
    选项默认设置为
    6
    与实际浏览器设置相匹配

    鉴于表现良好的JMeter测试必须以100%的准确率代表使用真实浏览器的真实用户,我希望您的测试计划应配置如下:


    谢谢您的回复。您的测试计划不会并行执行所有请求吗?我在问题中描述了请求的顺序,这就是浏览器执行请求的方式,正如您从第一个屏幕截图(来自实际的浏览器网络选项卡)中看到的那样。我最初应该包括它,但我已经更新了这个问题,以包括这样一个事实:第2组中的请求需要来自R1响应的值,而第3组中的请求需要来自R2响应的值。因此,简单地并行调用所有请求将不起作用,也不代表真正的浏览器行为。