性能测试基础

一、性能测试的每个阶段

 

二、性能测试的难点

(1)需求分析

(2)场景设计

(3)性能诊断调优

(4)环境搭建和模拟

三、不同视角看性能

黑盒/用户视角:

用户视角最多关注的是响应时间,也就是数据流向服务器,服务器返回的时间。

整体链路为:用户操作界面-----数据经过网络发送请求------服务端接收处理----DB端获取数据-----服务端处理返回----前端接收展示

研发视角:

(1)架构合理性

(2)数据库设计

(3)内存使用方式

(4)线程使用方式

(5)防止系统的资源恶性竞争

(6)业务逻辑不正确引发性能问题

运维视角

(1)硬件资源利用率

(2)JVM(JAVA虚拟机)

(3)DB

(4)扩展性、兼容性、最大容量、系统瓶颈

(5)系统7*24小时稳定性

测试视角

 

四、性能测试基础名词

内存泄露

指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

内存溢出

是指应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于能提供的最大内存。

举例1:幼儿园班里有十个杯子给几十个小朋友装牛奶喝,小朋友用完杯子后要放回去清洗后给后面的小朋友用,但有个小朋友不听话,用完杯子后丢垃圾桶去了, 这样小朋友轮流喝完牛奶的速度就变慢了(内存泄露), 甚至如果刚好一共有十个小朋友都不听话把杯子扔了,那后面的小朋友就喝不到牛奶了,这个“系统“就崩溃掉了(内存溢出)。

死锁

死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁, 这些永远在互相等待的进程称为死锁进程。

举例:小明和小刚打架,两人互相掐着对方的脖子,都各自喊着你先放,但都不认输都不肯放,那就死锁了- -!

房间里面只有一间浴室一个小音箱,小明在洗澡,小刚在用小音箱听歌,小明想一边洗澡一边听歌,小刚不给,小刚也想一边洗澡一边听歌,小明不让进,那就又死锁了- -!

吞吐量

处理能力又叫吞吐量,指的是单位时间内处理的客户端请求数量。

举例:小明开了家快餐店,这家快餐店在16点-20点这个时间段一共接纳了2000个客户。

绝对并发

多个用户同时做同一个操作。目的主要是考察系统运行过程中处理“死锁”、“资源争用”的能力。

举例:长城的宽度允许我和我的小伙伴五个人肩并肩一起走过去,但最佳第六人小明表示他也要并肩一起走,于是他被挤下去了- -!

相对并发

多个用户同时做同一个操作。但这个同时不一定要在同一秒钟,可以理解为同一个时间段内做了同一个操作。

举例:在国庆期间,我和我的5个小伙伴在长城畅通无阻地溜达了一圈。

稳定性测试

程序持续正确运行的周期长度。(时间范围内的运行稳定)

举例:买了个保温杯,天天使用它的情况下用了十年还没坏

posted @ 2025-05-16 10:46  寻虫测试  阅读(10)  评论(0)    收藏  举报