1.性能测试目的
•验证改进的性能效果,需要和以前的测试结果进行比对。
•新的业务上线,验证新系统能够满足系统的上线指标。
•验证系统稳定性
•验证系统的架构是否存在瓶颈
2.性能测试环境搭建
•性能测试环境:
硬件环境
软件环境
网络环境
最优的性能测试环境:
就是即将正式上线使用的生产环境
3.性能测试环境搭建
•硬件环境搭建要参考实际的生产环境搭建,并且要考虑自身的硬件成本
•软件环境尽量要和生产环境使用的版本和配置保持一致,并且尽可能采用最优配置
•网络环境尽可能参考生产环境的网络结构和搭建,尽可能不要跨多个网段
4.数据库中基础数据的准备
•基础数据的内容和数据量:
–需要参考具体系统的业务内容和使用规模
–类似系统的数据量规模
–尽可能多增加一定比例的冗余数据
基础数据准备方法:
–数据库存储过程
–LoadRunner、selenium等自动化测试工具
5.性能测试范围的定义
•和整个儿开发团队一起确认性能测试的范围
•系统中被频繁使用的功能、调用的接口等
•系统中涉及到大量数据库读、写的功能
•大量读写系统缓存部分的功能
6.性能测试的完成目标(1)
•新上线的测试系统没有明确的数字标准比对情况下,被测试系统已经被测试到了系统极限
(系统的某些资源已经耗尽,cpu,句柄、内存,数据库出现大量的slow query,系统有
些处理已经变慢),并且系统证明是可以水平扩展的,则可以上线。
7.性能测试的完成目标(2)
•有以往测试结果进行比对,只要证明类似的测试条件下,此次的结果比以往的测试结果更
好即可(每秒处理个数更多、单次请求的处理速度更快)
8.性能测试的完成目标(3)
•没有可以比较的测试结果,但是产品已经上线一段时间(至少3个月),有一些运营数据,
则需要分析运营的数据来作为比对的基准,只要被测系统达到
3个月内系统并发峰值的4倍就可以认为是可以接受的。(如果是接口为测试对象,则
需要混合主要的接口来进行性能测试)
9.性能测试的完成目标(4)
•开发人员提供经验值作为比对的基准,则被测对象只要证明满足开发人员提出的经验值即可。
如果选择以上的某一种策略,则必须明确系统的每秒处理个数和每次请求的平均时间的具
体数值,并出具最终的性能测试报告。
性能测试的脚本调试
•录制或者编写性能测试脚本
•修改测试脚本、使用随机化策略
•调试和运行脚本,查看log和数据库内容等方式验证脚本正确性
10.性能测试脚本的执行
•设计好特定的性能测试场景
•初始的压力线程数
•逐步加压的策略
•测试执行结束条件
•结束时的停止多线程的方式
注意:加压的压力测试机器和被测试对象最好在一个局域网段。
11.性能测试的数据收集
•响应时间小于1秒的请求个数
•响应时间超过1秒小于2秒的请求个数
•响应时间超过2秒小于3秒的请求个数
•响应时间超过
3秒小于4秒的请求个数
•响应时间超过4秒小于5秒的请求个数
•响应时间超过5秒的请求个数
12.性能测试数据分析
•分析系统性能瓶颈
•验证是否数据满足性能测试完
成条件
•整理测试报告,汇总性能测试数据,整理性能
测试结果,给出测试结论
•和整个儿开发团队确认测试结果
![065839ae05fe97fb798cb3a7806a9b05.png](https://i-blog.csdnimg.cn/blog_migrate/55b6ac5816082fab30f970b8bfc47a80.jpeg)
性能