一、性能测试基础
1.本质
基于协议(http)模拟用户发出请求(业务的模拟),对服务器形成一定的负载,来测试服务器的性能指标是否满足要求。与界面无关。
2.关注点
时间性能,空间性能
3.分类
(1)性能测试
(2) 负载测试:
(3) 压力测试
(4) 并发测试
(5) 配置测试
(6) 可靠性测试
二、性能测试指标
1.响应时间
网络传输时间+服务器处理时间(不包括前端页面渲染时间,即浏览器解析html得时间)
注:响应效率情况
2 ---->优秀
5 ------>良好
8 ------>较差
2.TPS
每秒处理的事务数
注:吞吐量:描述服务器的处理能力
3.资源利用率
在一定负载得情况下,服务器资源得占用情况
(1) CPU利用率
1.不容许超过70-80%
2.队列长度
(2)内存利用率
1. 80%以下
2. 页交换频率(虚拟内存,内存不足时,开辟一块硬盘内存作为虚拟内存)
页交换频率越大,内存越不足
3.带宽利用率1Byte=8bit
注: 如果资源利用率太小,会造成资源浪费
(3)用户数
并发用户数,在同一时间向服务器发送请求得用 户数量;
注:
①与每秒的并发请求数不同,一定要确认需求的目的是并发用户数还是并发请求数
②一个用户可能同时发送多个并发情求,一般来说,并发请求数大于并发用户数
三、性能测试的流程
1.需求分析
(1) 测试对象(测试点):
常用的,核心的,重要的,数据量,并发量。例如:登录,注册,搜索,添加购物车,下单,支付
(2)确定性能指标
1.吞吐量(tps):服务器每秒处理的请求数量 注:2/8原则:80%的用户请求,集中在20%的热点数据上,或时间段。
2.响应时间:从浏览器发出请求,服务器处理,到接收响应所需要的处理时间
3.用户数:并发用户数
4.资源利用率:CPU,Men(内存利用率),磁盘,network,
(3) 测试场景
1.单一场景:单个功能的性能测试,例如:登录,注册,搜索,添加购物车,…
2.混合场景:用户使用场景,系统使用场景
2.测试计划
(1)测试目标
(2)测试人员组织
(3)压测进度安排