1. 为什么要做性能测试
- 客户要求
- 领导要求
- 技术负责人想知道性能基本的指标
- 程序大佬想了解自己的系统在长时间压力下的运行情况
2. 性能测试的定义
- 性能测试是通过自动化测试工具模拟多种
正常
、峰值
以及异常负载
条件来
对系统的各项性能指标
进行测试
3. 性能测试范围
- 性能范围:系统的性能是一个很大的概念,覆盖面非常广泛,对一个软件系统而言包括:
执行效率、资源占用、系统稳定性、安全性、兼容性、可靠性、可扩展性
- 负载测试:通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。
负载测试
的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行 - 压力测试:对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
压力测试
是为了发现在什么条件下您的应用程序的性能
会变得不可接受
4.性能测试的类别
- 配置测试:配置测试主要是通过测试找到系统各项资源的最佳分配原则。例如
我们 可以不 停的调整oracle
的内存
来决定cpu
和内存
的匹配情况。
(当前配置-调优-未来业务增长) - 容量测试:测试系统能够处理的最大会话能力。确定系统可处理 同时在线的最大用户数,通常和
数据库
有关 - 可靠性测试:加载一定的
业务压力
(比如直到Cpu资源
在高使用率)的情况下,运行一段时间,检查系统是否稳定 - 失败测试:对于有
冗余备份
和负载均衡
的系统,通过这样的测试来检验如果系统局部发生故障用户是否能够继续使用系统,用户受到多大的影响
5.性能测试指标
- 事物
- 响应时间
- 点击率
- 吞吐量
- 并发用户
- 资源利用率
6.性能测试流程
- 分析被测系统,理解性能需求
- 编写性能计划和测试用例,测试场景
- 编写脚本(
jmeter, loadrunner, locust
) - 执行测试
- 分析结果,输出
测试报告
- 性能调优
7.....待续(常用性能测试工具介绍,Jmeter,Loadrunner,Python Locust.....
)
享受每一天,Just Enjoy !