2017-08-22 95 views
0

我的目标是在迭代之间给出确切的5000毫秒延迟。 以下是我遵循的两种方法。选择迭代间延迟的困惑

方法#:1:ThreadGroup> Add TestAction> Add JSR223 Timer(见下面的截图)。

我很清楚的方法#1,我可以看到下面的行在jmeter.log(5000-Prev gettime)从这我得到了迭代工作之间的确认延迟。

2017年8月21日16:23:08260 INFO oajtJSR223Timer:4831

2017年8月21日16:42:37871 INFO oajtJSR223Timer:4835

方法#:2:线程组>添加TestAction(见下面的截图)。

当我在jmeter.log中执行测试后,找不到任何指示迭代之间延迟的数字。

我的问题: 1.对于我应遵循方法#哪种方法迭代之间的5000毫秒的延迟:1和或方法2,#2。如果 我使用方法#:2的是如何能在哪里我可以交叉检查5000毫秒是否正在申请每个迭代。 3.方法#:2正确的我的意思是说我错过了什么?

请告诉我!我很困惑。

enter image description here

enter image description here

enter image description here

感谢, 拉吉

回答

0
  1. 你的方法#1是片状的

      请求之间
    • 延迟将始终小于5秒
    • 假设延迟应用于所有采样这个JSR223计时器位置,如果你希望所有的线程在迭代5秒休眠开始,你需要添加它作为第一个采样器的孩子。参考文献:

  2. 你的方法#2是罚款。

你期望看到延迟的证据吗? JMeter日志不会包含任何表示睡眠发生的行。jtl结果文件既不会显示测试操作采样器结果也不会显示JSR223计时器(除非您将采样器置于Transaction Controller的“父样本”模式下,配置为存储前/后处理器和计时器的持续时间)。

看到“睡眠”作品的唯一方法是运行测试2次:有或没有“睡眠”(对于1个虚拟用户更好),启用“睡眠”的测试的总持续时间应为5秒更长的时间。

+0

谢谢德米特里的澄清!我会采取方法#2。我不希望每个请求5000毫秒的延迟b/w。我使用常量计时器作为特定的请求作为孩子,只要它需要。我想5000毫秒延迟b/w Iterations.-Raj – rpagadala