初识性能测试

✏️作者:银河罐头
系列专栏:JavaEE

“种一棵树最好的时间是十年前,其次是现在”

目录

  • 什么是性能测试?
  • 为什么要做性能测试?
  • 性能测试常见术语及性能测试衡量指标
    • 并发用户数
    • 响应时间/平均响应时间(RT/ART)
    • 事务响应时间
    • 每秒事务通过数量
    • 点击量
    • 点击率
    • 吞吐量
    • 吞吐率
    • 思考时间
    • 资源利用率
  • 性能测试分类
    • 基准性能测试
    • 负载性能测试
    • 压力性能测试
    • 可靠性测试
  • 性能测试执行流程

什么是性能测试?

  • 生活中遇到的软件性能问题。

  • 性能测试定义

测试人员借助性能测试工具(LoadRunner, JMeter),模拟系统在不同场景下,对应的性能指标是否达到预期。

  • 性能测试和功能测试有什么区别:

功能测试:依靠人工执行。不管在任何场景下能够正常运行即可。

性能测试:依靠工具完成,软件在一些极端情况下, 是不是能够正常运行。

  • 什么样的表现属于软件性能好的表现,什么样的表现属于软件性能不好的表现。

DAU是“Daily Active User”的缩写,意思是日活跃用户。通常是指一天之内使用某产品的独立用户数。

软件性能不好的情况下:

可以通过:

减少并发数

软件算法优化

服务器升级

等手段来改善。

  • 影响一个软件性能好坏的因素有哪些。

硬件:服务器CPU利用率,内存,磁盘操作频率,CPU核心数,带宽

软件:算法,编程语言

用户:用户数量,用户使用时长,用户访问频率

为什么要做性能测试?

获取系统性能的指标,作为性能指标的基准。

验证系统的性能指标是否达到要求(性能需求)。

发现系统的性能瓶颈,内存泄漏等问题。

系统正常工作的情况下的最大容量。

帮助系统运维部门能更好的规划硬件配置。

性能测试常见术语及性能测试衡量指标

并发用户数

并发:大量用户,同时。

业务层面的并发用户数:指的是同时向服务器发送请求的用户数量。

后端服务器层面的并发用户数:指的是同时向服务器发送请求的请求数量。

系统用户数:系统注册的用户。

在线用户数:成功登录系统的用户数。

并发用户数:大量的访问系统,此时访问的用户数。

响应时间/平均响应时间(RT/ART)

1)用户响应时间

初识性能测试_第1张图片

N1+A1+N2+A2+N3+A3+N4

2)请求响应时间

服务器收到用户的请求到发出响应这段时间。

A1+N2+A2+N3+A3

3)影响一个软件响应时间的因素有哪些

网络带宽

数据库性能

服务器处理性能

软件算法,逻辑

用户设备

事务响应时间

  • 2-5-8原则

响应时间的“2-5-8原则”,简单说,就是当用户能够在2秒以内得到响应时,会感觉系统的响应很快;当用户在2-5秒之间得到响应时,会感觉系统的响应速度还可以;当用户在5-8秒以内得到响应时,会感觉系统的响应速度很慢,但是还可以接受;而当用户在超过8秒后仍然无法得到响应时,会感觉系统糟透了,或者认为系统已经失去响应,而选择离开这个Web站点,或者发起第二次请求。

每秒事务通过数量

处理事务的数量/事务花费的时间。

每秒事务通过数量 这个值越大,说明性能越好。

点击量

用户点击数量

点击率

点击量/时间。

每秒点击数代表用户每秒向Web 服务器提交的HTTP请求数。点击率越大,服务器压力越大。 这里的点击并不是鼠标的一次点击,一次点击可能有多次HTTP请求。

吞吐量

用户一次请求和服务器之间的数据交互量。

初识性能测试_第2张图片

吞吐率

吞吐量/时间

思考时间

用户在进行操作时,每个请求之间的间隔时间。

资源利用率

不同系统资源的使用情况。包含CPU,内存,硬盘,网络等。

性能测试分类

基准性能测试

让系统在正常情况下运行,观察软件性能指标。

应用场景:软件刚上线需要进行性能摸底。

负载性能测试

验证软件在一定的压力情况下运行,观察性能指标是否出现了拐点。

压力性能测试

系统处于饱和情况下,观察系统性能指标。

(往往会把系统搞崩溃)

初识性能测试_第3张图片

可靠性测试

验证系统在一个持续的时间段内运行,在这个运行时间段,观察系统各项性能指标是否正常。

性能测试执行流程

功能测试执行流程:

需求分析 -> 测试计划 -> 测试设计 -> 测试执行 -> 测试评估(测试报告) ->上线

性能测试执行流程:

需求分析 -> 测试计划 -> 选择一款性能测试工具 -> 性能测试脚本编写 -> 执行性能测试脚本 -> 产出一个性能测试报告

性能测试中出现了不符合预期的情况,不叫 bug, 叫做性能瓶颈。

在性能测试中,出现了 性能瓶颈,开发人员修复的过程,叫做 优化。

性能测试是在功能测试通过之后才实施的。

初识性能测试_第4张图片

你可能感兴趣的:(软件测试,压力测试)