基准测试 (Performance Benchmark Test)
概念
1)每次对外发布产品版本前必须要完成的测试类型
2)执行固定的性能测试场景得到系统的性能测试报告
3)与上一版本发布时的基准测试结果进行对比
4)优化 or 恶化 ?
测试目的
(1)获取系统性能基准作为参照物
(2)识别系统或环境的配置变更对性能带来的影响
(3)给系统优化前后的性能提升/下降提供参考标准
(4)观察系统的整体性能趋势与性能拐点,识别系统性能风险
基准评估
同一事务的响应时间变慢了
上一版本中,用户登录的响应时间是2s,在最新的被测版本中这个响应时间变成了4s;
系统资源的占用率变高了
上一版本中,平均 CPU 占用率是15%,在最新的被测版本中平均 CPU 占用率变成了 30%;
等等。。。。
负载测试
测试目的
1)持续稳定地增加系统的负载,测试系统性能的变化
2)找出指标阈值下的系统瓶颈和性能拐点
3)测试系统所能承受的最大负载量
4)找出内存管理错误,内存泄漏,缓冲区溢出的问题
5)找到处理极限,为调优提供数据
6)找出系统在稳定情况下的最大压力值
测试意义
通过改变负载方式、增加负载,发现系统中所存在的性能问题
实例
(1)200个并发用户访问时的最大响应时间,最大吞吐量
(2)21个小时内要处理 1000 笔业务,找到最大并发数
(3)响应时间不超过10s的最大负载
(4)cpu利用率不高于60%下的最大并发数
压力测试
测试目的
1)测试系统的资源在饱和状态下的应用的处理会话能力
2)持续稳定的增加系统压力,测试系统性能的变化
3)破坏性测试,确保系统失败并能正常恢复
4)发现系统稳定性的隐患和系统在负载峰值的条件下功能隐患
5)关注大业务量情况系统的长时间运行状态(例如反应变慢、内存泄漏 系统崩溃、失效恢复)
6)找出系统在可控错误率下的最大压力值
稳定性压力测试(可靠测试)
(1)长时间运行(7*24 小时)模拟被测系统的测试负载
(2)观察系统在长期运行过程中是否有潜在的问题
(3)对系统指标进行监控,发现长期运行时的内存泄漏、资源非法占用等问题
破坏性压力测试
1)不断加压,直至系统崩溃
2)测试系统的最大承受能力
3)通过破坏性加压的手段,快速造成系统的崩溃或让问题明显的暴露出来
阶梯式压力测试
(1)逐渐增加测试负载,如每5s钟增加100个并发数
(2)高负载情况下持续运行一段时间,然后再逐渐降低负载
(3)构成一个梯级的测试场景
Spike测试
概述
尖峰测试(Spike testing)在性能测试中属于压力测试的一个子集。指的是在某一瞬间或者多个频次下用户数和压力陡然增加的场景。
为了验证我们的网站在访问用户急剧增加的情况下,或者短时间内反复急剧增加工作负载时能否正常工作;以及程序能否从高负荷中恢复并正常工作时常常用到这种测试手法。
Spike在英文中是钉子的意思,或者我们可以将其称之为冲击测试,反复冲击服务器。
常见的场景有
12306开始售票时访问用户急剧增加
网站公布高考成绩、录取分数时,访问用户急剧增加
网站投放商业促销广告和促销活动,如双11和618等活动开始时,访问用户急剧增加
等等。。。。
来源:CSDN
作者:ufuhz2008
链接:https://blog.csdn.net/ufuhz2008/article/details/104005317