图床如果失效,可以关注二维码,公众号查阅。
JMeter安装
1、下载地址:
https://downloads.apache.org//jmeter/binaries/apache-jmeter-5.2.1.zip
2、解压apache-jmeter-5.2.1
3、启动
linux/mac启动:
[1] cd apache-jmeter-5.2.1/bin
[2] ./jmeter.sh
window启动:
双击jmeter.bat
目录介绍
├── LICENSE License说明文件
├── NOTICE 版权声明
├── README.md 简单介绍
├── backups
├── bin 配置文件、启动文件
├── docs 帮助文档
├── extras 辅助功能
├── lib 依赖组件的jar包
├── licenses 声明信息
└── printable_docs 离线帮助文件,可用来学习JMeter
测试计划要素
JMeter中一个脚本就是一个测试计划,测试计划中有这么四个关键点。
1、脚本中测试计划只能有一个
2、测试计划中至少要有一个线程组:进行并发量线程模拟
3、需要包含取样器:发送测试请求
4、需要包含监听器:判断系统瓶颈
当然JMeter包括丰富的元件,可以在JMeter脚本设计的时候按需选择就可以。
逻辑控制器
定时器
前置处理器
后置处理器
断言
函数助手
各类插件
.....
测试计划编写
JMeter编写性能测试脚本的类型好几类:HTTP协议的脚本、FTP脚本、Java脚本等。
最常用就是HTTP协议的脚本,可以分为HTTP协议录制脚本和HTTP协议接口手动编写脚本。
- HTTP协议录制脚本
HTTP协议录制脚本网上百度内容特别多,也比较简单
推荐两种方式:Badboy工具录制、JMeter配置代理录制
- HTTP协议接口手动编写脚本
参阅:https://testerhome.com/topics/22965
场景设计
重点要设置线程组的线程配置
重点要设置线程组的线程配置
重点要设置线程组的线程配置
"重要的事情说三遍"
完成脚本编写后,通过线程组的线程配置,或者JMeter的一些线程插件。完成线程配置,以此来做好性能测试的场景设计。
那这个线程设计需要做好充分的数据调研,比如:业务功能分布、业务量、用户量、业务时段、业务执行的比例等,一系列实际的数据来制定性能测试场景才最合理,性能测试才最有效。
非常不建议大家上来就几百个线程几秒内启动起来就开始性能测试,没有实际业务数据预估和参照,结果会不太可靠。就算没有实际业务或者业务特别小量,那在做性能测试场景设计的时候,如何增加线程数。
线程递增的策略
- 场景中的线程递增一定是连续的,并且在递增的过程中也是有梯度的。
- 场景中的线程递增一定要和 TPS 的递增有比例关系,而不是突然达到最上限。
- 上面两点针对的是常规的性能场景。对于秒杀类的场景,我们前期一定是做好了系统预热的工作的,在预热之后,线程突增产生的压力,也是在可处理范围的。这时,我们可以设计线程突增的场景来看系统瞬间的处理能力。如果不能模拟出秒杀的陡增,就是不合理的场景。
参考《极客时间》这里给出性能场景递增的经验值:
扫一扫,关注我