Loops Jmeter:为什么';我的线程是否在循环完成后重新启动?

Loops Jmeter:为什么';我的线程是否在循环完成后重新启动?,loops,jmeter,Loops,Jmeter,我有以下测试计划I Jmeter: 螺纹组 用户参数 Csv数据源 While控制器 一次性控制器 http采样器 http采样器 正则表达式提取器(查找while循环中的条件变量) 中频控制器 Http采样器 将响应保存到文件 BeanShell后处理器(清除已使用的变量) 现在,我的问题是,当If控制器的条件满足时,在线程完成后,它会按预期循环。 但是,当If控制器的条件不满足时,线程完成后,运行停止,不发生循环 在线程组设置中,我有“循环=50”和“错误时的操作:启

我有以下测试计划I Jmeter:

  • 螺纹组
    • 用户参数
    • Csv数据源
    • While控制器
      • 一次性控制器
        • http采样器
      • http采样器
        • 正则表达式提取器(查找while循环中的条件变量)
    • 中频控制器
      • Http采样器
      • 将响应保存到文件
    • BeanShell后处理器(清除已使用的变量)
现在,我的问题是,当If控制器的条件满足时,在线程完成后,它会按预期循环。 但是,当If控制器的条件不满足时,线程完成后,运行停止,不发生循环

在线程组设置中,我有“循环=50”和“错误时的操作:启动下一个线程循环”

在系统日志中,根本没有错误


有什么想法吗?

如果不满足条件,则不会执行If控制器的子项,并且您不会在jtl结果文件中看到它们

如果在If控制器之后添加i.e.a,您将看到每个虚拟用户将执行50次虚拟采样器

还有一些建议:

  • 用于编写脚本
  • 根据您的BeanShell后处理器将在每个采样器后执行,我不知道它到底在做什么,但目前它正在每个采样器后执行,因此可能是在清理您在While或If Controller中使用的变量