一.软件的性能
软件的性能主要是指效率特性
效率特性主要是指:
1.时间特性
指系统处理客户请求的时间
2.资源特性
指在进行性能测试过程中,系统资源消耗的情况
CPU
内存
磁盘
二. 性能测试的目的
1.评估当前系统能力
系统未做过任何性能测试,对系统当前的性能情况不了解,通过测试得到系统整体的评估
2.寻找性能瓶颈,优化性能
某业务操作响应时间长,某系统上线一段时间运行越来越慢,这些需要逐步分析,定位调优
3.预测未来性能
当用户数和业务增加时能否及时应对?如何调整? 是增加应用服务器,还是增加数据库服务器?还是要优化代码逻辑?
三.实际典型场景
1. 12306抢票
2. 京东618秒杀
四.性能测试注意事项
1.性能测试应尽可能尽早的进行
与功能测试一样,越早容易发现问题并修复问题,成本越低
2.性能测试需要独立的测试环境
性能测试环境和相对功能测试环境有更严格的要求,需要独立的网络和硬件环境,尽量保证和线上环境一致。
3.测试定义明确的测试目标
由于性能测试执行的成本较高(主要高在哪?),为保证性能测试的有效性,在性能测前应明确本次性能测试的目标以及相应的性能指标
4.性能测试需要团队支持
五.性能测试的分类
1. 基准测试
在一定的软件,硬件及网络条件下,模拟单用户访问请求一种或多种业务,产出基准性能数据
为用户并发测试和综合场景测试等性能分析提供参考依据
2.并发测试
通过模拟用户并发访问,测试多用户同时访问同一应用,模块或数据,观察系统是否出现问题
3.压力测试
对被测系统不断加压,直到压爆为止
4.负载测试
系统已经达到一定的饱和程度,如CPU,内存,磁盘处于高饱和状态下,此时系统长时间持续处理请求的能力。是否出现错误
5.配置测试
配置测试通过对被测系统软硬件环境的调整,了解不同配置对系统性能的影响程度,从而找到系统资源最优的配置
六.性能测试指标
通过性能指标衡量软件的性能
1.系统指标
2.资源指标
系统指标
(1)响应时间
用户从发送一个请求到用户接收到服务器返回的响应数据,这段时间就是响应时间
N1,N2,N3,N4 是网络传输时间
A1,A2,A3是应用服务器处理请求的时间
页面响应时间==网络传输时间+应用程序处理的时间
(2)并发数
并发用户数