当前位置: 首页 > news >正文

性能测试-笔记

目录

  • 性能测试理论
    • 性能测试的概念
    • 性能测试与功能测试对比
  • 测试策略
    • 基准测试
    • 负载测试
    • 稳定性测试
    • 压力测试
    • 并发测试
  • 性能指标
    • 响应时间
    • 并发数
    • 吞吐量
    • 点击数
    • 错误率
    • 资源利用率
  • 性能测试流程

性能测试理论

性能测试的概念

性能:就是软件质量属性中的”效率“特性,分为时间特性和资源特性
时间特性:表示系统处理用户请求的响应时间
资源特性:表示系统运行过程中,系统资源的消耗情况。资源包括:CPU、内存、磁盘
性能测试概念:使用自动化工具,模拟不同的场景,对软件各项性能指标进行测试和评估的过程
测试内容:
后台处理程序的性能(代码性能)
应用服务器、数据库、架构设计等是否存在瓶颈
服务器资源消耗(CPU、内存、磁盘、网络)
性能测试目的
评估当前系统能力
寻找性能瓶颈,优化性能
评估软件是否满足未来的需要

性能测试与功能测试对比

功能测试:验证软件系统操作功能是否符合产品功能需求规格,主要焦点在功能(正向、逆向)
性能测试:验证软件系统是否满足业务需求场景,主要焦点是业务场景的满足(时间、资源)

测试策略

基准测试

狭义上讲:就是单用户测试(一个用户测试多次)。测试环境确定后,对业务模型中的重要业务做单独的测试,获取单用户运行时的各项性能指标。
广义上讲:是一种测量和评估软件性能指标的活动。你可以在某个时刻通过基准测试建立一个已知的性
能基准线,当系统的软硬件环境发生变化之后再进行一次基准测试以确定变化对性能的影响。
在这里插入图片描述
基准测试数据的用途:

  • 基准测试不会单独存在
  • 为多用户并发测试和综合场景测试等提供参考依据
  • 为系统/环境配置、系统优化前后的性能提升/下降提供参考指标

负载测试

概念:通过逐步增加系统负载,确定在满足系统的性能指标(如响应时间等)情况下,找出系统所能够承受的最大负载量的测试。
作用:系统最大负载量达到用户要求时,系统才能正式上线使用。

稳定性测试

概念:在服务器稳定运行(用户正常的业务负载下)的情况下进行长时间测试(1天-1周等),并最终保证服务器能满足线上业务需求。
作用:系统在用户要求的业务负载下运行达到规定的时间时,系统才能正式上线使用。
在这里插入图片描述
在这里插入图片描述

压力测试

概念:在强负载下的测试,查看系统在峰值情况下是否功能隐患、系统是否具有良好的容错能力和可恢复能力。
测试场景:

  • 极限负载情况下的破坏性压力测试(在C-D区间测试)
  • 高负载下的长时间的稳定性压力测试(在B-C区间测试)

并发测试

并发测试(绝对并发):是指在极短的时间内,发送多个请求,来验证服务器对并发的处理能力。
应用场景:特定活动场景,如:抢红包、秒杀、抢购等。

性能指标

性能测试的指标:一些经过运算得出的结果,来量化衡量某种操作的
性能好坏;

响应时间

响应时间:指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的结果,整个过程所耗费的时间。(包括:服务器处理时间 + 网络传输时间)
注意:

  • 通过HTTP接口请求消息来测试
  • 不包括 发消息时前端页面的处理时间 和 收到消息后前端页面的渲染显示时间
    在这里插入图片描述

并发数

并发(用户)数:某一时刻同时向服务器发送请求的用户数。

吞吐量

吞吐量(Throughput):指的是单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力。
在这里插入图片描述
QPS(Query Per Second)每秒查询数:即控制服务器每秒处理的指定请求的数量
TPS(Transactions Per Second)每秒事务数:即控制服务器每秒处理的事务请求的数量(事务:即业务,页面上的一次操作,可能对应一个请求/多个请求)

点击数

点击数:指客户端向服务端发送请求时,所有的页面资源元素(如:图片、链接、框架css、js等)的请求总数量。
注意:

  • 只有web项目才有此指标
  • 点击数不是页面上的一次点击

错误率

错误率:指系统在负载情况下,失败业务的概率。错误率=(失败业务数/业务总数)*100%。
注意:

  • 大多系统都会要求错误率无限接近于0
  • 错误率是一个性能指标,不是功能上的随机bug

资源利用率

资源使用率:是指系统各种资源的使用情况,一般用“资源的使用量/总的资源可用量×100%”形成资源利用率的数据。
常见资源指标:

  • CPU使用率:不高于75%-85%
  • 内存(大小)使用率:不高于80%
  • 磁盘IO(速率):不高于90%
  • 网络(速率):不高于80%

性能测试流程

在这里插入图片描述
性能测试需求分析
在这里插入图片描述
性能测试计划和方案
测什么: 项目背景、测试目的、测试范围
谁来测:进度与分工、交付清单
怎么测:测试策略
测试用例
在这里插入图片描述

性能测试执行
在这里插入图片描述
性能分析和调优
性能测试分析人员经过对结果的分析以后,如果不符合性能需求,则会提出性能bug,然后由开发人员进行后续的调优
调优 – 开发人员为主导,数据库管理员、系统管理员、网络管理员、性能测试分析人员配合进行
验证 - 性能测试人员继续进行第二轮、第三轮……的测试,与以前的测试结果进行对比,从而确定经过调整以后系统的性能是否有提升
性能测试报告总结
测试报告是对性能测试工作的总结,为软件后续验收和交付打下基础。
测试报告的主要内容:

  • 测试工作的经过回顾
  • 缺陷分析和调优
  • 风险评估
  • 性能测试结果
  • 测试工作总结与改进

文章转载自:

http://kZQ9oxnf.yjwdg.cn
http://BtMA4Bo0.yjwdg.cn
http://hKrytAuD.yjwdg.cn
http://7UJGr63i.yjwdg.cn
http://EsgOmnSB.yjwdg.cn
http://nHiVXGRk.yjwdg.cn
http://aUkp7zZU.yjwdg.cn
http://6KShjd87.yjwdg.cn
http://uhP9axMy.yjwdg.cn
http://4TWfe1F6.yjwdg.cn
http://w6xL9OTJ.yjwdg.cn
http://F4jPm0q2.yjwdg.cn
http://cRdC5pDp.yjwdg.cn
http://of67Wfa6.yjwdg.cn
http://iB31Q5wZ.yjwdg.cn
http://fAJEO8a6.yjwdg.cn
http://oucB05Xt.yjwdg.cn
http://GBKlWeij.yjwdg.cn
http://ztuhNx1k.yjwdg.cn
http://2N34MdIJ.yjwdg.cn
http://CnngRGWS.yjwdg.cn
http://QK154jQV.yjwdg.cn
http://zapOVJiw.yjwdg.cn
http://KxnuwpBc.yjwdg.cn
http://39HsKdRH.yjwdg.cn
http://j8KkU5MJ.yjwdg.cn
http://ohtgFSMr.yjwdg.cn
http://aiGw0V28.yjwdg.cn
http://EOoS4USR.yjwdg.cn
http://jGmovO9T.yjwdg.cn
http://www.dtcms.com/a/36103.html

相关文章:

  • 【前端】Axios AJAX Fetch
  • 解析CV/多模态算法的要点及技术特点,弥补单模态信息不足的多模态应用的哪些场景中?
  • 互联网摸鱼日报(2025-02-24)
  • 【cuda学习日记】4.3 结构体数组与数组结构体
  • 【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
  • SOME/IP-SD -- 协议英文原文讲解2
  • Git 分支操作
  • 【Redis 原理】通信协议 内存回收
  • [特殊字符] 蓝桥杯 Java B 组 之最小生成树(Prim、Kruskal) 并查集应用
  • 无人机+DeepSeek:放飞自我的智能化技术详解!
  • java23种设计模式-抽象工厂模式
  • DeepSeek-R1:通过强化学习激励大语言模型的推理能力
  • 陀螺匠·企业助手v1.8 产品介绍
  • c++_string模拟实现
  • Eureka、ZooKeeper 和 Nacos 之间的对比
  • YOLO11改进-模块-引入混合结构模块Mix Structure Block 提高多尺度、小目标
  • 使用Windbg调试目标进程排查C++软件异常的一般步骤与要点分享
  • 6层高速PCB设计入门第1~10讲
  • STM32CUBEIDE FreeRTOS操作教程(十三):task api 任务访问函数
  • 原生稀疏注意力NSA 替换transformer 注意力进行文本生成训练
  • Web自动化之Selenium添加网站Cookies实现免登录
  • C++ ——— 二叉搜索树
  • EasyExcel 使用指南:基础操作与常见问题
  • MySQL 最左前缀原则:原理、应用与优化
  • Winform工具箱、属性、事件
  • 04基于vs2022的c语言笔记——数据类型
  • C# httpclient 和 Flurl.Http 的测试
  • Mesh自组网技术及应用
  • Threejs教程三【揭秘3D贴图魔法】
  • 如何使用爬虫获取淘宝商品详情:API返回值说明与案例指南