需求:需要测试系统用户同时登陆操作业务的并发数,查看系统最大支持多少用户同时在线操作业务
工具:Jmeter
jmeter插件:jp@gc
下面来说说使用步骤~
首先,先在jmeter中安装插件,如图
安装成功后,新建一个jp@gc的线程组
然后就是按照系统的业务流程来写个流程性的脚本
可以参考下我的脚本流程,
我在脚本中首先使用了csv存储了500个登录用户名和密码(登录用户也可以使用jmeter写脚本批量创建用户)
然后使用【仅一次控制器】进行登录操作,我会从登录成功的接口返回结果中通过正则提取我想要的token
接下来我使用了【随机控制器】
在随机控制器下面按照功能模块放了【简单控制器】
每个【简单控制器】下面放一个页面的查询接口和业务接口
另外,为了模拟真实用户操作,给业务接口加了固定定时器,在查询接口成功后,隔2S进行业务接口操作,当然这个时间你可以调整,也可以隔得更久,可以根据实际来设置
这里不得不说,jmeter的控制器很实用!
然后在看看本次测试重点,并发用户数。由于我每个线程都有不同的登录用户,所有并发用户数,就是线程数
这个工具可以持续性的测试用户同时在线操作业务的上限值,很容易发现系统瓶颈
最后可以通过新增监听器去分析结果
1.jp@gc - Actiive Threads Over Time 不同时间活动用户数量展示
2.jp@gc - Transactions per Second ,即TPS:每秒事务数
性能测试中,最重要的2个指标之一。该插件的作用是在测试脚本执行过程中,监控查看服务器的TPS表现————比如整体趋势、实时平均值走向、稳定性等。
3.jp@gc - Response Times Over Time,即TRT:事务响应时间
性能测试中,最重要的两个指标的另外一个。该插件的主要作用是在测试脚本执行过程中,监控查看响应时间的实时平均值、整体响应时间走向等。
4.jp@gc - PerfMon Metrics Collector,即服务器性能监控数据采集器
在性能测试过程中,除了监控TPS和TRT,还需要监控服务器的资源使用情况,比如CPU、memory、I/O等。该插件可以在性能测试中实时监控服务器的各项资源使用。
要有最朴素的生活和最遥远的梦想,即使明日天寒地冻,山高水远,路远马亡