一.常见的性能问题有哪些
二.性能测试是什么
测试人员借助测试工具,模拟系统在不同的场景下,对应的性能指标是否达到预期.
三.性能测试和功能测试之间的区别
功能测试:人工来完成,在一些常见的场景下,只要能够运行就ok
性能测试:借助工具完成,在一些极端的情况,需要保障软件能够正常工作.
四.什么样的系统/软件表现属于性能好,什么样的软件属于性能不好?
软件1(某团1.0版本) 和 软件2(某团2.0版本) 是一样的功能,登录,推出,查看首页
软件1登录需要花费1s,软件2登录需要1ms时间
说明软件2性能做了提升,软件2性能较好
五.为什么要进行性能测试
- 获取系统性能的指标,作为性能指标的基准
- 验证系统的性能指标是否达到要求(性能需求)
- 发现系统的性能瓶颈,内存泄漏等问题
- 系统正常工作的情况下的最大容量
- 帮助系统运维部门能更好的规划硬件配置
六.常见的性能指标一级性能测试专用术语
1.并发数
eg1.
一个人踢正步往前走,脚步声不响亮,一大群人迈着不同节奏的正步往前走,声音是非常乱的,只有一大群人迈着相同的步伐,往前走的时候,声音非常响亮.
eg2.
双11的时候,有100万的用户,同时操作淘宝系统,此时淘宝系统承载的压力非常大
并发的条件:大量用户,同时操作
并发数:此时大量用户数并发数
系统用户数:数据库中保存的用户数量
在线用户数:登录成功后的用户数量
并发用户数:当系统达到并发的时候,用户的数量即为并发用户数
2.响应时间/平均响应时间(RT/ART)
从用户视角来考虑,响应时间反映了完成某个操作所需要的时间,标准定义是,应用系统从发出请求开始,到客户端接收完所有的字节数据所消耗的时间.
1).用户响应时间
N1 +A1 + N2 +A2 + N3 + A3 + N4
用户从发起请求到用户看到相应中间经历的这段时间
2).请求响应时间
A1 + N2 + A2 + N3 + A3
服务器接收到请求到发出相应的这段时间
问题: 如果一个软件(某滴)发布上线了,但是打车的时候,页面响应时间较长,有哪些可能影响的因素?
解:
用户设备老旧;
网络太慢了;
服务处理太慢;
软件算法时间复杂度太高了;
数据库性能太差了.
3.事务响应时间
事务:
举例:淘宝支付的时候,输入密码点击确定,支付成功
调用用户,收银台,支付系统...
事务从请求开始,到事务响应成功花费的时间就是事务响应时间
4.每秒事务通过数(Transaction Per Second)
TPS是指每秒系统能够处理的事务数.它是衡量系统处理能力的重要指标
如果每秒事务通过数越大,代表系统处理的能力越高,越强
当压力加大时,TPS曲线如果变化缓慢或者有平坦的趋势,很有可能时服务器开始出现瓶颈了.如果环境没有发生大的变化,对于同一系统会存在一个最大处理事务能力,他并不随着并发用户的增减而改变.
5.点击率(Hit Per Second)
每秒点击数代表用户每秒向Web服务器提交的HTTP请求数.点击率越大,服务器压力越大.
这里的点击并不是鼠标的一次点击,一次点击可能有多次HTTP请求.
6.吞吐量
用户每次请求和服务器之间的数据交互
7.吞吐率
吞吐量/请求处理时间 (size/time)
8.思考时间(Think Time)
指模拟正式用户在实际操作时的停顿间隔时间,从业务的角度来讲,思考时间指的是用户在进行操作时,每个请求之间的间隔时间.
9.资源利用率
不同系统资源的使用情况.包含CPU,内存,硬盘,网络等.
七.性能测试分类
1.基准性能测试
让系统在正常情况下运行,观察各种性能指标
应用场景:软件性能摸底
2.负载性能测试
让系统背负一定的压力,观察性能指标是否出现拐点
3.压力测试
让系统处于饱和状态,观察系统性能指标(压力测试往往会把系统搞崩溃)
4.可靠性测试
验证系统在一段时间内(一周/一个月/一年...)持续运行,观察各项性能指标是否正常.
版权归原作者 秋雪丶 所有, 如有侵权,请联系我们删除。