在Transaction Controller之间思考时间

时间:2015-03-13 02:40:43

标签: jmeter jmeter-plugins

我正在使用事务控制器进行测试,我有5个事务控制器。现在我想指定每个事务控制器之间的思考时间(Timer)说300毫秒。

当我添加常量计时器时,每个采样器需要300毫秒的时间进行处理,因此整体响应会增加一点。

有没有其他方法可以只考虑交易控制器,而不是单独的采样器?

4 个答案:

答案 0 :(得分:2)

您可以按如下方式处理:

  1. 在每个交易控制器中添加Beanshell Post Processor作为最后一个请求的子项
  2. 将以下代码放入后处理器的“脚本”区域:

    Thread.sleep(300L);
    
  3. 将事务控制器配置为

    • 生成父样本
    • 不将后处理器和计时器的持续时间包括在生成的样本中
  4. 有关详细说明,请参阅Using JMeter's Transaction Controller指南。

答案 1 :(得分:0)

我可以想到两个可以提供所需解决方案的选项:

1)最简单的方法是将计时器放到以下事务控制器的第一个请求中。 OR 2)在Controller结束时添加测试操作,可在Sampler中找到,您可以在其中提供PAUSE时间(以毫秒为单位)。

希望这有帮助。

答案 2 :(得分:0)

添加测试操作并选择暂停。将其设置为0ms,然后将高斯随机计时器添加到测试操作。以这种方式配置定时器将允许您使用暂停或不使用(用于调试)运行测试,单击"开始无暂停"时,不会跳过配置为定时器的测试操作,而高斯定时器附加到测试操作将

答案 3 :(得分:0)

最好的方法是通过“记录”控制器上的“为孩子添加思考时间”。这将在每个控制器之间插入一个“思考时间”动作。然后,在每个“思考时间”操作中以毫秒为单位指定持续时间。

通常,我将使用$ {thinkTime}作为持续时间,然后在您可以添加到项目顶部的“用户定义的变量”配置元素中指定thinkTime = 10000或类似值。

思考时间是在事务控制器之间,而不是在控制器中的请求之间。

我正在使用jmeter 5.3。