【发布时间】:2014-09-12 13:02:08
【问题描述】:
假设我有一个 Jmeter 测试,它模拟一些用户登录和更多操作。我还打开了“错误时启动新线程”。因此,如果某些用户失败 - 它只会获取另一个用户并在指定的时间内继续处理测试。
但我定期调用授权用户并模拟它们,我需要使用“线程间通信”和其他线程组(-s)。基本上这可以通过以下方式正常工作 - 在主线程中,我登录并用所需的 cookie 填充一些 FIFO 队列,并在另一个线程组中获取该 cookie。在另一个线程组中,我还检查了另外一个 FIFO 队列(在用户注销时填充),如果得到我需要的,则停止该线程。
这里的问题是登录后主线程失败。在这种情况下,子线程将“永远”执行,因为该定期调用使会话保持活动状态。
还有一个问题——Jmeter 中是否有可能对线程故障执行一些操作(比如 finally 块)。基本上我需要在注销或线程失败时填充第二个 FIFO 队列
【问题讨论】:
-
你不能使用 IF 控制器和 javascript 在登录失败后处理你需要的代码处理。
-
没有。因为我不知道可能发生错误的确切位置。问题是我登录后有很多请求,每个请求都可能失败。