Jmeter运营活动并发测试——巧用集合点

        在运营活动测试过程中,经常需要对秒杀活动或定时抽奖活动进行并发测试。那么怎样快速便捷的模拟多用户同时参与活动,抽取奖品,进行并发测试呢?尤其是,当奖品总数N<用户总数M时,代码是否会存在奖品多发给用户,导致奖品剩余总数出现负数的严重bug?

        下面介绍使用轻量级开源测试工具Jmeter进行并发测试的方法——巧用集合点

        以总产品数为3,模拟多用户(5个用户)同时进行抽奖并发测试为例,进行介绍。

        思路:首先在运营后台配置产品总数为3,其次模拟多用户登陆,最后通过设置集合点的方式,模拟多用户同时进行抽奖并发测试。

        下面进行详细介绍。

        一、模拟多用户登录

        1、准备M个用户登录数据,将数据保存到data.txt文件中,如下所示:

        2、将登陆接口参数化

        通过添加CSV Data Set Config,将登陆接口参数化。如下图所示:

        设置好上述步骤后,再在登陆接口中引用手机号和密码变量:${mobileNo},${passWord},如下图所示:


二、在抽奖接口前设置集合点

        性能测试中经常要进行多用户并发测试,但真正的并发是不存在的,为更真实的模拟并发,可以在并发测试的接口前设置集合点。在本次示例中,当所有的虚拟用户登陆之后,都相互等待,然后一起访问抽奖接口。设置集合点的方法如下:

        1、在刚刚创建的脚本中,右键点击 线程组---->定时器---->Synchronizing Timer,如下图所示:

        2、将抽奖接口移至集合点下,并在集合点中设置多少个用户同时访问

        本次示例中,设置为5个用户并发访问,如下图所示:

        注意,若设置5个用户并发访问时,需在线程组中设定,用于模拟多用户同时测试的线程数为5个。如果线程数达不到集合点设置的数,JMeter会一直不动,一直在等待达到设定的集合数到来。

        添加完成之后,线程组线程数设定,如下所示:

        集合点用户数设定如下图:

        以上步骤都设置完成后,执行结果,结果展示中,第一个用户抽奖时间为:2016-12-15 08:19:30,如下图:

        第二个、第三个用户抽奖时间都为:2016-12-15 08:19:30,如下图所示:

        至此,已达到多用户同时抽奖并发测试的目的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,761评论 25 709
  • “我就是这样度过了人生中的最近这四年:”接下来给出了《纸牌屋》的Twitter账号连接。 这是鲍尔威利蒙加入Net...
    慕可可阅读 426评论 0 0
  • 流浪流浪 驾着一艘破船去流浪 越过了马六甲横跨了太平洋 拿出在家附近捡的种子——撒下了希望 顺着朝阳的光 我可以到...
    比莉爱桃阅读 182评论 0 4
  • 时间那么贵……
    不会开花的兔子阅读 183评论 0 0