JMeter - 错误后停止线程,但允许重试

JMeter - Stop thread after error, but allow retries

我有一个 JMeter 脚本,它向 5 个不同的端点发出请求。如果有错误,该线程应该停止。

但是,我想在停止线程之前重试 3 次对第三个端点的请求。

我的脚本如下所示:

由于我选中了线程组下的选项停止线程,如果对第三个端点的第一个请求失败,线程将停止并且不会重试。

如果我选中 Continue,那么对第三个端点的重试会按预期工作,但如果对其他端点的请求失败,线程不会停止。

我还尝试将以下 Groovy 脚本添加到 JSR223 后处理器,但没有成功:

if (prev.isStopThread()) {
    prev.setStopThread(false)
}

如果能得到任何帮助,我将不胜感激。

谢谢!

只需在 Thread Group 中将“采样器错误后要采取的操作”设置为 Continue,以防止线程停止。

如果您决定停止线程,您可以通过两种方式进行:

  1. 通过Flow Control Action Sampler (in conjunction with the If Controller)

  2. 通过您的任何 JSR223 测试元素作为

    prev.setStopThread(true)
    

您甚至不需要计数器,因为 JMeter 5.0 而控制器通过 __jm__While Controller__idx 预定义变量

公开当前迭代