Jmeter实现并发测试

2年前 (2022) 程序员胖胖胖虎阿
242 0 0

在实际测试过程中,需要对某些业务进行并发测试,模拟绝对并发时系统的处理是否有异常。比如支付场景,如果有一些秒杀或者其他优惠活动时,很可能有多用户并发的场景发生,下面就针对支付的并发场景,使用Jmeter进行测试。

1、需要用到的主要组件介绍:Synchronizing Timer 中文:同步定时器。

SyncTimer 的目的是阻塞线程,直到 X 个线程被阻塞,然后它们立即被释放。因此,SyncTimer 可以在测试计划的各个点创建大量即时负载。

Number of Simultaneous Users to Group by:一次释放的线程数。将其设置为0相当于将其设置为线程组中的线程数。

Timeout in milliseconds:以毫秒为单位的超时时间,如果设置为0,Timer 将等待线程数达到“同时分组的用户数”中的值。如果大于0,则计时器将在最大“超时(以毫秒为单位)”处等待线程数。如果在超时间隔后未达到等待的用户数,定时器将停止等待。默认为0

注意:如果超时(以毫秒为单位)设置为0并且线程数从未达到“同时分组的用户数”,则测试将无限暂停。只有强制停止才能阻止它。在这种情况下,可以考虑以毫秒为单位设置超时。意思就是如果线程组设置10,并发设置3,不整除最后一次只有一个并发,达不到3就一直卡着了,所以最好设置下超时时间。

Jmeter实现并发测试

2、设计脚本,就拿我实际的例子来说,完成的支付流程为购买一个商品先生成支付二维码、扫码后订单入库,成功支付后回调需要处理业务的服务(进行库存扣减等)。所以脚本就是先获取支付二维码、再模拟生成订单,再模拟支付回调。

Jmeter实现并发测试

 3、设置并发数量:设置线程组跟并发数量都为10.

Jmeter实现并发测试

4、通过表格查看结果,查看设计的脚本是否达到想要的效果,从下图可看出,这三个接口,获取订单二维码和创建订单的接口先执行,时间并不是绝对的并发,是顺序执行的。支付回调接口则是绝对的并发。所以脚本的设计能达到我们的效果。

Jmeter实现并发测试

5、执行后,看看并发后,系统的处理是否正确,接口是否报错,具体要结合自己的业务。

版权声明:程序员胖胖胖虎阿 发表于 2022年9月24日 上午2:40。
转载请注明:Jmeter实现并发测试 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...