jmeter 如何使用基于迭代完成次数的开关控制器

k3fezbri  于 2022-12-18  发布在  其他
关注(0)|答案(1)|浏览(165)

我需要使用开关控制器执行不同的请求。我的要求是,请求1只能执行一次。10分钟后,我的请求2必须执行。我已将开关控制器值配置为1,它将运行请求1。我想知道在负载测试期间,请求1完成1次迭代后,如何将开关控制器值更改为2。

Switch controller 
     -> Once only controller
          .-> request 1
     -> Transaction controller
           -> Request 2

我已经尝试过JMeter预处理器来修改开关值,但是它不起作用。

jvlzgdj9

jvlzgdj91#

您根本不需要使用Switch Controller。
JMeter颠倒执行采样器,因此它将始终运行:
1.请求1
1.请求2
并且仅当“请求1”完成时才运行“请求2”。
如果你的问题是某种“学术”兴趣:可以,您可以使用JMeter Variable作为“开关值”,但是:
1.如果你想提供一个数字索引--它们是从零开始的,换句话说,你需要把0放在运行第一个孩子,1放在运行第二个孩子,等等。

  • 您可以使用多种方式修改变数:
  • 使用后处理器(如正则表达式提取器),它将从开关控制器内某处的响应中提取一些内容,并覆盖那里的变量值
  • 使用Set Variables Action等特殊采样器(可使用JMeter Plugins Manager安装)
  • 使用任何JSR 223测试元素和以下代码:
vars.put('your-variable-name-here', 'your-variable-value-here')

如果变量没有默认值,则不执行任何操作。

相关问题