jmeter 业务顺序执行(串行、并行)

简介

    当我们在应对某些性能需求时,比如要求测试单个业务串行或并行的响应时间。如果直接设定线程组+业务的话,jmeter 会将某个线程组下面的全部业务一起执行,在这种情况下的响应时间是不符合要求的,所以需要勾选指定参数或设置其他组件。

下面使用测试数据库的例子,测试WEB程序也是同理。

        

文章目录如下

1. 业务串行顺序运行

2. 单个业务顺序并发

3. 总结


        

1. 业务串行顺序运行

我们平时习惯性直接在测试计划中添加线程组、业务,如下:

如上图可以看到业务并不是按照我们的顺序排队执行的

        

如果希望让其排队执行也很简单,勾选《测试计划》 "独立运行每个线程组"

        

再来看看执行结果

勾选测试计划选项后按顺序执行

        

2. 单个业务顺序并发

还是使用前面串行的例子,将线程组设置100个并发,结果如下:

  • 两个线程组是按顺序执行的,但是线程组中的业务却是同时运行。

如果客户要求查看某个小功能的并发响应时间,上面的这种情况肯定是不符合要求的,因为线程组中小业务越多,实际并发也就越多,这是非常消耗硬件资源的,响应时间会比预期更慢。解决的方式有3种:

  1. 手动将业务一个一个的执行(效率太低);
  2. 将每个业务单独配置一个线程组(太麻烦);
  3. 使用同步定时器让其顺序执行(推荐)。

        

使用第3种方法,需要配置两个组件:同步定时器、固定定时器

同步定时器用户组数量配置与线程组一样

固定定时器线程延迟配置为0

        

看一下最终结果

每个并发业务按顺序执行

        

3. 总结

如果只是顺序执行单个业务,那么勾选《测试计划》中 "独立运行每个线程组" 选项即可。

如果需要顺序并发执行某个业务,需要勾选《测试计划》中 "独立运行每个线程组" 选项,并且增加定时器:同步定时器、固定定时器。如果所有线程组的线程数都一样,那么这2个定时器放在与线程组同级即可;如果每个线程组的线程数不一样,那么需要在这些线程组下面都添加2个定时器。

        

注意:这种方法仅用于循环1次的测试,如果是无限循环,且指定测试时长:

按上述配置,JMeter 会先将第1个线程组执行完成10秒后再执行下一个线程组,并且线程组中的业务会同时进行

  • 12
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值