【测试】——性能测试入门

📖 前言:在软件开发过程中,性能测试是确保系统在各种条件下稳定运行的关键步骤。性能测试不仅关注系统在正常负载下的表现,还要评估其在极端条件下的响应能力。通过性能测试,我们可以发现系统的性能瓶颈,优化资源配置,确保用户在使用软件时获得流畅的体验。本文将带你了解性能测试的基本概念、常见问题、测试流程以及专业术语。


🕒 1. 什么是性能测试

性能测试是测试人员借助测试工具,模拟软件在不同场景下系统性能指标是否满足需求

🕘 1.1 常见的性能问题

  1. 资源泄漏,包括内存泄露
  2. CPU 使用率达到 100%,系统被锁定等
  3. 线程死锁,阻塞等造成系统越来越慢
  4. 查询速度慢,或者列表的效率低
  5. 受外部系统影响越来越大

🕘 1.2 性能测试的概念

测试人员借助性能测试工具,模拟系统在不同情况下性能指标是否正常。

🕘 1.3 性能测试和功能测试的区别

功能测试关注软件的功能是否实现,而性能测试不仅要实现功能同时要测试在极端条件下(用户的访问量增加)能否正常实现。

🕘 1.4 性能的好坏如何定义

  • 用户登录所需时间短的性能好
  • 页面不卡顿的性能好

🕘 1.5 影响性能的因素

  • 硬件:服务器 CPU (核心数、利用率)、服务器内核、内存、磁盘、网络带宽…
  • 软件:编程语言、算法
  • 用户:用户数量、用户操作频率

🕒 2. 为什么进行性能测试

  • 获取系统性能的指标,作为性能标准的基准
  • 验证系统的性能指标是否达到要求(性能需求)
    • 应用程序是否能够满足系统要求的各种性能指标
    • 应用程序是否能够处理预期的用户负载并有盈余能力
    • 应用程序是否能够处理业务所需要的业务数量
    • 在预期和非预期的用户负载下,应用程序是否稳定
    • 是否能确保用户在真正使用软件时获得舒服的体验
  • 发现系统的性能瓶颈,内存泄漏等问题
  • 系统正常工作的情况下的最大容量
  • 帮助系统运维部门能更好的规划硬件配置

🕒 3. 性能测试常见专业术语以及衡量指标

并发:软件在运行的过程中,有大量的用户同时访问。

并发用户数:大量用户请求系统,此时的用户数量就是并发用户数。

并发请求数:大量用户请求系统,服务器接收到的请求数。

用户数

  • 系统用户数:系统数据库中维护的用户数据对应的数量(有活跃用户也有潜水用户)
  • 在线用户数:登录系统的用户数量
  • 并发用户数:同时对系统发起请求对应的用户数量

系统用户数 > 在线用户数 > 并发用户数(系统限制用户登录成功才能访问系统)

响应时间/平均响应时间(RT/ART):
在这里插入图片描述

用户响应时间:用户从发起请求到接受到请求花费的时间。

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

请求响应时间:服务器接受到请求到发出响应的时间。

  • A1 + N2 + A2 + N3 + A3

用户的设备、网络、服务器的配置(CPU、内存、带宽)、服务器对应的算法、逻辑处理、数据查询的速度等都会影响响应时间。

事务:此时的事务是针对一个业务单位来定义的。

事务响应时间(Transaction Response Time):服务器处理一个事务所花费的时间。

【358定律】:是在计算机系统中,对每一个程序而言,收到需求并返回响应需要等待的平均时间为3.58毫秒。

每秒事务通过数(Transaction Per Second):TPS 指每秒系统能够处理的事务数,它是衡量系统处理能力的重要指标

点击率(Hit Per Second):用户在单位时间内提交的 HTTP 请求数。点击率越大,服务器压力越大。

吞吐量(Throughput):用户和服务器之间数据传输量。

吞吐率:吞吐量/时间(Size/time),单位时间内系统处理的客户请求的数量。吞吐率越大性能越好

思考时间(Think Time):用户在进行操作时,每个请求之间的间隔时间。

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

🕒 4. 性能测试分类

  • 代码级别的性能测试
  • 基准测试(Benchmark Testing)
  • 并发测试(Concurrency Testing)
  • 负载测试(Load Testing)
  • 压力测试(Stress Testing)
  • 配置测试(Configuration Testing)
  • 可靠性测试(Reliability Testing)

🕘 4.1 基准测试

基准测试也叫一般性能测试。

定义:让系统在正常情况下运行,观察系统的性能指标是否正常。

前一个版本的性能指标进行对比。

🕘 4.2 负载测试

负载测试是指让系统背负一定的压力,运行一段时间观察系统是否存在性能拐点。

🕘 4.3 压力测试

让系统处于极限或者饱和状态时,观察系统性能指标(压力测试会使系统崩溃)。

在这里插入图片描述

🕘 4.4 可靠性测试

使系统长时间运行,观察系统性能是否出现异常。

🕒 5. 性能测试执行流程

功能测试执行流程:

需求分析 → 测试计划 → 测试开发、测试设计 → 测试执行 → 测试评估

性能测试执行流程:

需求分析(性能需求) → 测试计划(确定性能测试的工具) → 测试开发(性能测试脚本编写) → 测试执行(跑脚本) → 测试评估(测试报告,包括性能问题和优化方案)

性能测试的时候,发现的问题不叫 BUG,叫性能瓶颈;开发进行修复的过程叫性能优化


OK,以上就是本期知识点“性能测试入门”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~

❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值