性能测试理论、性能测试分类、性能测试指标

news2025/2/18 20:36:12
  • 性能测试概念

(1)什么是性能?

  • 时间:系统处理用户请求的响应时间

  • 资源:系统运行过程中,系统资源消耗情况

(2)什么是性能测试?

使用自动化工具,模拟不同的场景,对软件各项性能指标进行测试和评估的过程。

(3)什么是性能测试的目的?

  • 评估当前系统能力

  • 寻找性能瓶颈,优化性能

  • 评估软件是否能够满足未来的需要

  • 性能测试和功能测试:
  • (1)功能测试和性能测试有什么不同?
  • 功能测试:验证系统的功能需求规格。焦点:功能(正向、逆向)在这里插入图片描述
  • 性能测试:验证系统的业务场景测试。焦点: 时间、资源
    在这里插入图片描述
  • (2)功能测试和性能测试有什么关系?

一般项目中,先功能测试通过后,后进行性能测试

  • 性能测试分类

  • 基准测试
    在这里插入图片描述

(1)什么是基准测试?

  • 狭义上讲:就是单用户测试。(单用户循环多次得到的数据)
    在这里插入图片描述
  • 广义上讲:建立基准线,当系统的软硬件环境发生变化之后再进行一次基准测试以确定变化对性能的影响
    在这里插入图片描述

(2)基准测试数据的用途?

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

(1)概念

通过逐步增加系统负载,确定在满足系统的性能指标(如响应时间等)情况下,找出系统所能够承受的最大负载量的测试。
在这里插入图片描述

(2)作用

系统最大负载量达到用户要求时,系统才能正式上线使用。

  • 稳定性测试

(1)概念

在服务器稳定运行(用户正常的业务负载下)的情况下进行长时间测试(1天-1周等),并最终保证服务器能满足线上业务需求。

(2)作用

系统在用户要求的业务负载下运行达到规定的时间时,系统才能正式上线使用。
在这里插入图片描述

  • 压力测试

(1)概念

强负载下的测试,查看系统在峰值情况下是否功能隐患、系统是否具有良好的容错能力和可恢复能力
在这里插入图片描述

(2)测试场景

  • 极限负载情况下破坏性压力测试
  • 高负载下的长时间的稳定性压力测试
    第一种:极限负载情况下导致系统崩溃的破坏性压力测试(C-D区间)
    第二种:高负载下的长时间稳定性压力测试(B-C区间)
  • 并发测试

(1)概念

并发测试(绝对并发):是指在极短的时间内,发送多个请求,来验证服务器对并发的处理能力

(2)应用场景

特定活动场景,如:抢红包、秒杀、抢购等。

  • 性能测试指标

(1)响应时间

定义:从客户端发送请求,到客户端收到服务器响应的总时间。
组成:网络传输时间+服务器处理时间
在这里插入图片描述

(2)并发数

定义:某一时刻同时向服务器发送请求的用户数
在这里插入图片描述

(3)吞吐量

  • 什么时吞吐量?
    指的是单位时间内处理的客户端请求数量。—直接体现软件系统的性能承载能力。
  • 吞吐量的单位有哪些?
    • 从业务角度:业务数/天、访问人数/天、页面访问量/天
    • 从网络角度:字节数/小时、字节数/天
    • 从技术指标: 每秒查询数(QPS)每秒事务数(TPS)

吞吐量–QPS:
QPS(Query Per Second)每秒查询数:即控制服务器每秒处理的指定请求的数量。
在这里插入图片描述

吞吐量–TPS:
TPS(Transactions Per Second)每秒事务数:即控制服务器每秒处理的事务请求的数量。
事务:即业务,页面上的一次操作,可能对应一个请求/多个请求
在这里插入图片描述

QPS和TPS有什么关系?
事务,即业务。一个事务可以对应一个请求/多个请求
一个事务对应一个请求时,TPS =QPS
一个事务对应n个请求时,QPS=n * TPS

(4)点击数

  • 什么是点击数?
    指客户端向服务器发送请求时,所有的页面资源元素(如:图片,链接、框架css、js等)的请求总数量
    在这里插入图片描述
    注意:
    只有web项目才有此指标
    点击数不是页面上的一次点击

(5)错误率

  • 什么是错误率?
    指系统在负载情况下,失败业务的概率。错误率=(失败业务数/业务总数)*100%

注意:

  • 错误率是性能指标,是高负载下的失败业务的概率;
  • 大多数系统都会要求错误率无限接近于 0
  • 随机bug是功能bug,先解决随机bug才能进行性能测试。

(6)资源利用率

  • 什么是资源使用率?
    是指系统各种资源的使用情况,一般用”资源的使用量/总的资源可用量*100%“
  • “常见的指标:在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2299124.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【kafka系列】日志存储设计 消息写入、读取

目录 日志存储设计 1. 日志存储的目录结构 2. 日志内容格式设计 3. 日志索引设计 4. 设计优势 消息写入流程 示例 流程图 消息读取流程 示例 关键设计细节 流程图 日志存储设计 Kafka的日志存储是其高吞吐、持久化能力的核心设计,其结构包含目录组织、…

【C】初阶数据结构5 -- 栈

前面学习了两种最基本的数据结构 -- 顺序表和链表,接下来就可以基于这两种数据结构来实现其他数据结构了。其实,其他的数据结构的物理结构要么是数组,要么就是链表,所以学好顺序表和链表是学好其他数据结构的基础。接下里&#xf…

Spring MVC Streaming and SSE Request Processing SSE可以实现chatgpt一次请求分批次响应的效果

1. Introduction This simple tutorial demonstrates the use of several asynchronous and streaming objects in Spring MVC 5.x.x. Specifically, we’ll review three key classes: ResponseBodyEmitterSseEmitterStreamingResponseBody Also, we’ll discuss how to i…

CNN-LSSVM卷积神经网络最小二乘支持向量机多变量多步预测,光伏功率预测

代码地址:CNN-LSSVM卷积神经网络最小二乘支持向量机多变量多步预测,光伏功率预测 CNN-LSSVM卷积神经网络最小二乘支持向量机多变量多步预测,光伏功率预测 一、引言 1、研究背景和意义 光伏发电作为可再生能源的重要组成部分,近…

架构设计系列(三):架构模式

一、概述 关于移动应用开发中常见的架构模式,这些模式是为了克服早期模式的局限性而引入。常见的 架构模式有: MVC, MVP, MVVM, MVVM-C, and VIPER 二、MVC, MVP, MVVM, MVVM-C, and VIPER架构模式 MVC、MVP、MVVM、MVVM-C 和 VIPER 是移动应用开发中…

强化学习-NPG

NPG来源于PG算法,是TRPO算法的前身。 随机梯度策略算法的输入输出问题(不得不考虑的): PG算法用函数表示策略,该表示方法不直接输出动作(有别于“确定性梯度策略”),那么就有两种可以…

数据守护者:备份文件的重要性及自动化备份实践

在信息化社会,数据已成为企业运营和个人生活的重要组成部分。无论是企业的核心业务数据,还是个人的珍贵照片、重要文档,数据的丢失或损坏都可能带来无法估量的损失。因此,备份文件的重要性愈发凸显,它不仅是数据安全的…

初阶c语言(练习题,猜随机数,关机程序)

目录 第一题,使用函数编写一个随机数,然后自己猜,猜随机数 第二道题(关机程序) 实现代码(关机程序) 实现代码(猜数字) 前言: 学习c语言,学习…

TypeScript 与后端开发Node.js

文章目录 一、搭建 TypeScript Node.js 项目 (一)初始化项目并安装相关依赖 1、创建项目目录并初始化2、安装必要的依赖包 (二)配置 TypeScript 编译选项(如模块解析方式适合后端) 二、编写服务器代码 &a…

基于SSM+uniapp的鲜花销售小程序+LW示例参考

1.项目介绍 系统角色:管理员、商户功能模块:用户管理、商户管理、鲜花分类管理、鲜花管理、订单管理、收藏管理、购物车、充值、下单等技术选型:SSM,Vue(后端管理web),uniapp等测试环境&#x…

数据开放共享和平台整合优化取得实质性突破的智慧物流开源了

智慧物流视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本可通过边缘计算技术…

2025互联网医院系统源码解析:AI陪诊问诊APP的未来发展

2025年,AI陪诊问诊APP将如何在技术上创新,如何推动互联网医院的进一步发展,成为了我们今天探讨的核心内容。在本文中,我们将通过源码解析,深入分析这一前沿技术的未来发展趋势,帮助广大从业者更好地理解这一…

【NLP 22、语言模型 language model】

有时候我也想听听,我在你心里,是什么样子 —— 25.1.12 一、什么是语言模型 语言是灵活的,也是有规律的 了解一门语言的人可以判断一句话是否“合理” 通俗来讲,语言模型用来评价一句话(句子可以看作是字的组合)是否“合理”或…

(萌新入门)如何从起步阶段开始学习STM32 —— 0.碎碎念

目录 前言与导论 碎碎念 所以,我到底需要知道哪些东西呢 从一些基础的概念入手 常见的工具和说法 ST公司 MDK5 (Keil5) CubeMX 如何使用MDK5的一些常用功能 MDK5的一些常见的设置 前言与导论 非常感谢2301_77816627-CSDN博客的提问,他非常好奇…

Eclipse:关闭多余的工具条

Eclipse默认的工具条非常多,可以通过如下方法选择关闭一些不常用的: 1.选择菜单Window -> Perspective -> Customize Perspective 2.根据需要勾选Toolbar Visbility下面的工具条项

【第3章:卷积神经网络(CNN)——3.6 CNN的高级特性与优化策略】

在2012年ImageNet竞赛的颁奖现场,当AlexNet以超出第二名10%的惊人准确率夺冠时,整个计算机视觉界都意识到:这个叫CNN的架构正在重写游戏规则。十年后的今天,当我们站在YOLOv8、Vision Transformer等新架构的肩膀上回望,会发现经典CNN的进化史就是一部浓缩的深度学习发展史…

【R语言】非参数检验

一、Mann-Whitney检验 在R语言中,Mann-Whitney U检验(也称为Wilcoxon秩和检验)用于比较两个独立样本的中位数是否存在显著差异。它是一种非参数检验,适用于数据不满足正态分布假设的情况。 1、独立样本 # 创建两个独立样本数据…

250214-java类集框架

单列集合是list和set,list的实现类有ArrayList和LinkedList,前者是数组实现,后者是链表实现。list和set,前者有序、可重复,后者无序不可重复。 1.单列集合 1.1. list java.util.List接口继承自Collection接口&#…

ROS2 话题通信

1. 基本概念 发布-订阅模型:节点间通过话题(Topic)异步通信,发布者(Publisher)发送消息,订阅者(Subscriber)接收消息。 话题(Topic):…

【学习资源】时间序列数据分析方法(1)

时间序列数据分析是一个有趣的话题,让我们多花一些时间来研究。此篇为第一篇文章。主要介绍特征提取方法、深度学习时序数据分析模型、参考资源。期望能帮助大家解决工业领域的相关问题。 1 特征提取方法:信号处理 (来源:INTELLIGENT FAULT DIAGNOSIS A…