性能测试流程
测试执行
- 搭建测试环境
- 部署测试环境
- 执行测试环境
- 测试指标监控
结果分析报告
定义:测试结果分析、测试问题定位、测试报告输出
-
性能符合性验证:查看测试结果是否满足要求,比如响应时间、资源利用率、吞吐量等等
-
性能能力验证:查看测试结果是否满足要求,记录软件系统的性能变化曲线
-
对于确定是否存在性能瓶颈:首先判断是否存在硬件(包括网络)瓶颈问题,若不存在硬件瓶颈问题,则按照应用软件到系统软件(应用服务器、数据库服务器、操作系统)的顺序进行分析,确定瓶颈点
性能调优:由性能能力验证确定性能瓶颈分析方法*硬件瓶颈分析方法(windows—) perfmon 内存分析方法 处理器分析方法 磁盘I/O分析方法 软件瓶颈分析方法*
软件瓶颈分析方法 :分析事务响应时间、吞吐量,确定是否存在性能问题,若发现存在性能问题,则找出响应时间不符合要求或者出现多个失败的事务,对其进行分解,然后对其进行网页细分,以确定影响性能的元素。
https://www.cnblogs.com/fanpl/articles/8762947.html linux系统下性能监控
- 测试报告
测试指标:描述与测试场景对应的事务平均响应时间、事务吞吐率、资源消耗指标、运行的用户数等信息。
结果分析与总结:根据测试目标,描述最后分析得到的结果,并给出相应的建议。
测试报告案例
验收测试
交给客户,客户验证软件的测试、一般会走核心业务,然后随机性的进行简单的测试过程
性能需求
隐性性能需求
隐性性能需求通常由普通型客户提出
显性性能需求
显性性能需求一般由专业型客户提出,这类客户往往具备自己的开发部门和测试团队
性能需求获取方法
依据用户明确要求
依据用户明确给出的测试相关数据和指标是分析系统性能需求最直接,最简便的方法
依据用户提供的已有数据整理分析得出
已有数据指的是客户业务交易的纸质数据等
依据同行业中类似项目或类似行业中的数据
当自己没有某些资源时,要学会借助外界力量帮助自己实现性能目标的获取
80/20原则分析计算得出
举例:
某公司每年业务量集中在8个月,每个月20个工作日,每个工作日工作8小时。
公司每年处理业务数约100万笔,其中15%的业务处理中每笔业务需对应用服务器提交7次请求;其中70%的业务处理中每笔业务需对应用服务器提交5次请求;其余15%的业务处理中每笔业务需对应用服务器提交3次请求。考虑到今后三年业务发展的需要,测试需按现有业务量的2倍进行。
总的请求数为:
(100x15%x7+100x70%x5+100x15%x3)x2=1000万次/年
每天请求数为:1000/160=6.25万次/天
每秒请求数为:(62500x80%)/(8x20%x3600)=8.68次/秒
不以2-8原则:
62500/(8x3600)=62500/28800=2.7次/秒