测试驿栈-由浅入深学性能 性能测试基础课笔记

飞天小子的性能课堂 · 2020年11月02日 · 2145 次阅读

高级性能测试课程

性能测试基本思路

测什么

1.确定业务场景
2.确定测试方向
3.确定业务范围
4.确定业务逻辑(任何测类型都不能脱离业务逻辑)

怎么测

1.熟悉常用性能指标描述
2.学会设计测试场景
3.确定并发用户数
4.熟悉性能脚本设计

对不对

1.分析数据结果
2.优化性能数据
3.整理测试报告

性能测试视角

1.用户视角
关注浏览器响应时间(浏览器时间 + 接口时间)
2.开发视角
只关心代码处理速度
3.运维视角
关心用户数增加对服务器资源的影响
4.测试视角
用户体验 + 硬件资源 + 代码质量

性能测试指标

error

1.需要优先保证正确率
2.脱离了正确率的性能结果都没有意义

RPS

request persecond(每秒请求数)代表了压力值
100 线程,每秒请求 1 次:rps=100/s
100 线程,每秒请求 2 次:rps=200/s
1 线程,每秒迭代 100 次:rps=100/s
TPS:transaction persecond(每秒处理数)
代表了服务器(cpu)的处理能力
1.cpu 的处理能力是有上限的
2.通过设计 RPS,施压服务器,观察 TPS 曲线,可以找到 cpu 的处理上限
3.tps 随时都在波动,影响的可能性也有很多(磁盘,网络,内存)

rt:响应时间

latency:总延迟
connect time:网络连接
response time:服务处理
latency=connect+response
latency 和 connect 差值大,表示时间消耗在了服务层
latency 和 connect 差值大小,表示时间消耗在了网络层

性能测试类型

并发测试

1.不存在绝对的并发,并发一定是有单位时间的,通常都是秒
2.线程是一边启动一边发送请求,所以同步并发需要加集合点:Synchronizing Timer

负载测试

1.持续不断的增加压力,找到性能瓶颈点(阶梯加压线程组)
2.随着负载增加,tps 应该持续增加。如果出现下降的趋势,表示瓶颈点已经到了
3.找到瓶颈点之后就可以停止测试

压力测试

1.维持一定的负载量,持续运行一段时间(几小时或者几天)
2.稳定性压力测试:保持最大压力的 80%,目的是找到内存泄露的问题
3.破坏性压力测试:极限压力持续运行,目的就是让服务器快速的暴露异常

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册