性能测试类型
基准测试
侠义上讲:就是单用户测试,对业务模型中的重要业务做单独的测试,收集所有的性能指标(指进行基础的数据采集,为后续多用户测试做参考和对比)
广义上讲:是一种测量和评估软件性能指标的活动。在某一个时刻进行性能测试,建立一个已知的性能水平,当软硬件发生变化时对性能产生的影响
用途:
1.为多用户并发测试和综合场景测试等性能分析提供参考依据
2.识别系统或环境的配置变更对性能响应带来的影响
3.为系统优化前后的性能提升/下降提供参考标准
负载测试
定义:通过桌布增加系统负载,测试系统性能的变化,并最终确定在满足系统性能指标情况下,系统所能承受的最大负载量的测试
负载:指向服务器发送的请求数量,请求越多,负载越高
注意:负载测试关注的重点是逐步增加压力
稳定性测试
说明:在服务型稳定运行的情况(用户正常负载)下进行长时间测试(在B点),并最终保证服务器满足线上业务要求,时间一般为1天、一周等。
并发测试
在极短时间内,发送多个请求,来验证服务器对并发的处理能力
压力测试
在强负载(大数据量、大量并发用户)下的测试,查看应用系统在峰值使用情况的操作行为,有效地发现系统的某项功能隐患,系统是否具有良好的容错能力和可恢复性能力
压力测试分为高负载下的长时间稳定性压力测试(在C点)和极限负载情况下(C~D点之间)导致系统崩溃的破坏性压力测试
容量测试
关注软件的极限压力下的各个极限参数值。例如:最大TPS,最大连接数、最多并发数、最多数据条数
常用性能指标
1.响应时间
指用户从客户端发起一个请求开始,到客户端收到服务器返回的结果,整个过程所消耗的时间
响应时间 = 网络时间(N1+N2+N3+N4)+ 应用程序处理时间(A1+A2+A3)
2.并发数
并发测试的用户数
3.吞吐量
指的是单位时间内处理的客户端请求数量,直接体现软件系统的 性能承受能力
QPS 和TPS
4.点击数
不是指在页面的一次点击,指的是页面加载时向服务器发送的请求数量。
是衡量web服务器处理能力的一个重要指标,通常我们用每秒点击数来衡量web服务器的处理能力
5.错误率
指在负载情况下,失败业务的概率,错误率 = (失败业务数/业务总数)*100%
错误率一般不超过千分之五(这个根据公司实际情况来),稳定性好的系统,错误率应该由超时引起,即使为超时率
6.资源利用率
指系统各种资源的使用情况,一般用“资源的使用量/总的资源可用量 X 100%”形成资源利用率的数据
通常来说;
1.CPU不高于80%
2.内存不高于80%
3.硬盘不高于90%
4.网络不高于80%