控制Jmeter中的特定代码块来停止和启动新线程?

时间:2018-06-11 06:29:43

标签: jmeter

主题:1000

1. Validate username
2. Validate Password
If controller
    3. User Info
    4. Settings
    5. Payments
    etc...
    20. Logout

现在,如果验证密码失败,那么后续运行将不会运行..但仍然计算线程。考虑800是成功而200登录失败仍然显示Active 1000已启动:1000。

我不想要验证密码失败的线程,如何停止失败的线程而不是获取新线程..

在线程组中,设置为“Action to be taken after a sampler error

我选择了Start Next Thread Loop。如果它在验证登录时失败,应该启动新线程。但是如果if循环块出现故障,它也会创建新线程。这是实际的应用程序失败。

我希望在验证用户名和密码调用but if it is failed on the if block it should report error not stop and start new thread.

失败时停止当前线程启动新线程

有可能吗?因为线程组控制整组测试?

1 个答案:

答案 0 :(得分:0)

您可以在JSR223 component中创建新主题,但小心使用

ctx.getThreadGroup().addNewThread( 0, ctx.getEngine() )

您可以使用“停止操作”使用Test Action在特定情况下停止:

  

“完成”任何正在进行的样本后,“停止”操作将停止线程或测试。 “立即停止”操作会在不等待样品完成的情况下停止测试