一. 性能测试(服务器)
①原理:基于协议模拟用户发出请求,对服务器形成一定负载,来测试服务器的性能指标是否满足要求性能指标
②定义:指通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
③标准:
- 多:支持同时访问的虚拟用户量越大越好
- 快:请求的时候响应时间越短越好
- 好:用户请求的整个过程运行越稳定越好
- 省:节省资源,用最少的资源跑最大的并发数
④关注点:
- 空间:服务器CPU/内存的使用率(一般CPU和内存使用率不超过75%~80%,CPU占用太高会导致处理速度变慢且发热,内存占用太高会导致卡顿且发热)
- 时间:响应时间,2/5/8原则(发送请求,响应时间应该在2秒以内,超过2小于5秒可以反馈给开发进行优化,超过5小于8秒开发的有问题,大于8秒无法忍受,业务复杂的响应时间可以长一些)对于单用户的系统,响应时间(或者系统响应时间和应用延迟时间)可以很好地度量系统的性能
- 并发量:越多越好
- 错误率:越低越好(不超过0.05%)
- 吞吐量:吞吐量是指系统在单位时间内处理请求的数量,单位tps,对于并发系统,通常需要用吞吐量作为性能指标。
- QPS:每秒查询率QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。(看来是类似于TPS,只是应用于特定场景的吞吐量)
⑤性能测试工具
- LoadRunner(LR):对环境有要求,win7及以上需要创建一个虚拟机来运行loadrunner
- Jmeter
- Apache AB:用的比较少
二、Jmeter简介
1.为什么要用Jmeter?
- 开源,免费,基于Java编写,可集成到其他系统,可拓展各个功能插件
- 支持接口测试,压力(负载和压力)测试等多种功能,支持录制回放
- 入门简单相较于自己编写框架和其他开源工具,有较为完善的UI界面,便于接口调试
- 多平台支持,可在Linux,Windows,Mac上运行,支持多协议
2.Jmeter的作用?
- 接口测试 postman/jmeter
- 性能测试 jmeter
- 数据库测试
3.Jmeter环境变量的配置
方式一:
①下载Jmeter
下载地址:Apache JMeter - Download Apache JMeter
②安装并配置Java环境变量
③打开Jmeter安装目录→bin目录→双击jmeter.bat启动
方式二:
①下载Jmeter
②配置Jmeter环境变量(不用配置Java):右击此电脑→属性→高级系统设置→环境变量→在系统变量中新增JMETER_HOME→编辑环境系统中的Path→确定
③Windows+R打开cmd窗格→输入jmeter直接启动
4.Jmeter目录的介绍
①/bin目录(常用文件介绍)
- examples:目录下包含Jmeter使用实例
- ApacheJMeter.jar:JMeter源码包
- jmeter.bat:windows下启动文件
- jmeter.sh:Linux下启动文件
- jmeter.log:Jmeter运行日志文件
- jmeter.properties:Jmeter配置文件
- jmeter-server.bat:windows下启动负载生成器服务文件
- jmeter-server:Linux下启动负载生成器文件
②/docs目录:Jmeter帮助文档
③/extras目录:提供了对Ant的支持文件,可也用于持续集成
④/lib目录:存放Jmeter依赖的jar包,同时安装插件也放于此目录
⑤/licenses目录:软件许可文件,不用管
⑥/printable_docs目录:Jmeter用户手册