软件测试解读——性能效率测试
一、性能效率测试概述
性能效率(efficiency)为GB/T 25000.51-2016标准中提及的软件产品的八大产品质量特征之一。性能效率测试用于评估待测系统与软件在给定的时间和其他资源限制下完成其指定功能的程度,也称作性能测试。

为完成系统与软件性能测试,可依照的国家标准有:
-
GB/T 25000.10-2016系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第 10 部分:系统与软件质量模型
-
GB/T 25000.51-2016系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第 51 部分:就绪可用软件产品(RUSP)的质量要求和测试细则
-
GB/T 25000.23-2019系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第 23 部分:系统与软件产品质量测量
-
GB/T 38634.1-2020系统与软件工程 软件测试 第1部分:概念和定义
-
GB/T 39788-2021系统与软件工程 性能测试方法
其中GB/T 25000.51-201和GB/T 39788-2021对系统与软件性能测试的测试要求、测试过程、测试需求模型以及测试类型进行了详细的规定与解读。
二、性能效率测试内容及方法
性能效率测试内容主要包含:时间特性、资源利用率、容量以及性能效率的依从性这四个方面,并以书商形式展示可验证的依从性证据,具体的测试内容还需依照被测系统或软件的测试需求再做细分。
在产品说明书中应对系统容量等数值进行描述,在进行测试时需要将所有影响性能效率的条件进行说明,如:带宽、硬盘空间、随机存储器、CPU速度等。可以选择适合的性能测试工具进行测试,如Apache JMeter、LoadRunner、Gatling等。本实验室性能效率测试使用的测试工具为Apache JMeter,下文中介绍的测试方法也以该工具为例。
(一)时间特性
时间特性是指产品或系统执行其功能时,其响应时间、吞吐率等特性满足需求的程度。
响应时间是指用户发起一个请求开始,到接收到处理结果所经历的时间。
测试方法概述:创建线程组模拟请求发送的过程,可对线程数量、线程组循环次数、线程组准备时长进行配置。再将需触发的请求添加入该线程组中,如果对并发数量以及请求输入值有特殊要求的,可添加定时器、函数、正则表达式提取器等组件。最后添加察看结果树和聚合报告,点击运行,查看聚合报告运行结果,通过聚合报告中的平均响应时间(Average)结果,判断得到的响应时间是否符合要求。

吞吐率是指单位时间内系统处理的客户请求的数量。
测试方法概述:创建线程租,添加请求。在需要监测吞吐率得的请求中设置吞吐量控制。最后通过聚合报告中的平均吞吐率(Throughout,单位为事务/分)结果,判断得到的平均吞吐率是否符合要求。

(二)资源利用率
资源利用率指的是产品或系统执行其功能时,所使用资源数量和类型满足需求的程度。包括:CPU利用率、可用内存、磁盘I/O、带宽等指标。
测试方法概述:可使用JMeter自带的ServerAgent组件,实时监控电脑资源的使用情况。在设置线程组时,通过设置不同的并行用户量与服务器发生不同的交互,让服务器运行到最佳状态。最终查看监听器(jp@gc - PerfMon Metrics Collector)记录下来的数据波动结果判断是否符合要求。

(三)容量
容量指的是产品或系统参数的最大限量满足需求的程度,包括软件所能支撑的最大并发用户数、可存储的最大数据量、数据处理容量、最大的交易吞吐量等。
例如:系统支持100用户并发进行在线操作。
测试方法概述:将线程组数量设置为100模拟一百个用户在系统内并发进行操作,在用户与服务器发生交互时需要添加集合点,以保证为100个用户并发执行的,在线程组中设置循环多次保证测试结果的稳定性。最终查看聚合报告中并发触发的每个请求的报错情况(error)判断系统是否满足最大100用户并发的测试需求。

(四)性能效率的依从性
性能效率的依从性指的是产品或系统遵循与性能效率相关的标准、约定或法规以及类似规定的程度,并以书面形式展示可验证的依从性依据。
三、软件测试实验室的能力资质
中国信息通信研究院南方分院(深圳信息通信研究院)已获得国家认证认可监督管理委员会颁发的检验检测机构资质认定证书(CMA)和中国合格评定国家认可委员会(CNAS)颁发的实验室认可证书。2023年,在软件测试的性能效率和信息安全性的两次能力验证中,均获得“满意”的结果,展现了我院软件质量测评实验室的优秀的技术实力。本院拥有专业的正版测试工具,可在资质认可范围内从事软件的科研课题验收测试、信息系统验收测试、产品委托评测、安全专项评测、移动APP安全评测等,可以根据客户需求提供软件测试方案设计、测试用例设计、现场或样品送检测试、出具检测和验收报告等测试服务。成立多年以来已完成多家厂商的软件委托测试业务,并得到高度认可。
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。
相关文章:
软件测试解读——性能效率测试
一、性能效率测试概述 性能效率(efficiency)为GB/T 25000.51-2016标准中提及的软件产品的八大产品质量特征之一。性能效率测试用于评估待测系统与软件在给定的时间和其他资源限制下完成其指定功能的程度,也称作性能测试。 为完成系统与软件性能测试,…...
【PLC】子程序功能心得
博主用GX Works编程的时候用到子程序,这里给大家和自己强调一下,每个子程序一定要以SRET结束,尤其是有多个子程序的时候 博主吃了个大亏,由于有两个子程序,结果第一个子程序没有写SRET,结果两个子程序默认以…...
Iris for mac 好用的录屏软件
Iris 是一款高性能屏幕录像机,可录制到 h.264。Iris 在可用时利用板载 GPU 加速。它可以选择包括来自摄像头和最多两个麦克风的视频。 兼容性 所有功能在macOS 11.0-14上完全支持,包括macOS Sonoma。 简单编码 直接录制为h.264、h.265、ProRes或Motion…...
Transformers实战05-模型量化
文章目录 简介主要类型量化的优点量化的缺点量化过程量化过程反量化过程 精度和参数 量化实例bitsandbytes安装bitsandbytes4bit量化(加载)8bit量化(加载)验证效果 简介 模型量化(Model Quantization)是一种优化技术,旨在减少机器学习模型的…...
【Python】bytes 和 bytearray 到底是什么类型呢?
bytes和bytearray同属于二进制序列类型,是常见的数值类型的一种。 bytes多用在在文件的读写、网络通信、数据编码/解码等场景用的比较多。 而bytearray在二进制数据处理、图像处理、内存映射文件和网络通信等场景用的比较多。 其中这两部分的主要差别: …...
Windows10上安装SQL Server 2022 Express
Microsoft SQL Server 2022 Express是一个功能强大且可靠的免费数据管理系统,可为轻量级网站和桌面应用程序提供丰富可靠的数据存储,为关系数据库: (1).LocalDB(SqlLocalDB):是Express的一种轻型版本,该版本具备所有可…...
C++11 异常
目录 0.前言 1.C语言传统错误处理方式 1.1使用返回值 1.2使用全局变量 1.3使用断言 1.4优缺点 2.C异常的概念 3.异常的使用 3.1异常的抛出和捕获 3.1.1异常的抛出和匹配原则 3.1.2在函数调用链中异常栈展开匹配原则 3.2异常的重新抛出 3.3异常安全 3.4异常规范 4.自定义异常体系…...
pip下载lap失败
把pip install lap改为pip intsall lapx...
【Material-UI】Button 中的点击事件处理(Handling clicks)详解
文章目录 一、点击事件处理基础1. 基本用法2. 事件处理器的传递 二、实际应用中的注意事项1. 事件处理逻辑的优化2. 避免过多的状态更新3. 使用合适的事件类型 三、关于文档中未提及的原生属性四、最佳实践1. 无障碍性2. 视觉反馈3. 防止重复点击 五、总结 在现代前端开发中&am…...
Spring Cache框架(AOP思想)+ Redis实现数据缓存
文章目录 1 简介1.1 基本介绍1.2 为什么要用 Spring Cache? 2 使用方法2.1 依赖导入(Maven)2.2 常用注解2.3 使用步骤2.4 常用注解说明1)EnableCaching2)CachePut3)Cacheable4)CacheEvict 3 注意…...
在Windows编程中,MFC\C++中如何在OnCopyData中传递Vector类型数据?
我们在通过 WM_COPYDATA 消息实现进程间通信时,发送char 数组或其他类型数组与发送vector是有区别的。 1、发送基础类型时,直接发送指针。 typedef struct tagMYSTRUCT {int nTest;wchar_t cTest[40] {0}; } MYSTRUCT, *PMYSTRUCT;MYSTRUCT stSend; s…...
Java常见面试题-01-java基础
文章目录 面向对象的特征Java 的基本数据类型有哪些JDK、JRE、JVM 的区别重载和重写的区别Java 中和 equals 的区别String、StringBuffer、StringBuilder 三者之间的区别接口和抽象类的区别是什么string 常用的方法有哪些什么是单例模式?有几种?什么是反…...
Python爬虫实战:利用代理IP爬取百度翻译
文章目录 一、爬取目标二、环境准备三、代理IP获取3.1 爬虫和代理IP的关系3.2 巨量IP介绍3.3 超值企业极速池推荐3.4 IP领取3.5 代码获取IP 四、爬虫代码实战4.1分析网页4.2 寻找接口4.3 参数构建4.4 完整代码 一、爬取目标 本次目标网站:百度翻译(http…...
Transformer学习之DETR
文章目录 1.算法简介1.1 算法主要贡献1.2 算法网络结构 2.损失函数设计2.1 二分图匹配(匈牙利算法)2.2 二分图匹配Loss_match2.3 训练Loss_Hungarian 3.网络核心模块3.1 BackBone模块3.2 空间位置编码(spatial positional encoding)3.2.1 输入与输出3.2.2 空间位置编码原理 3.3…...
场外个股期权是什么品种?可以交易哪些品种?
今天带你了解场外个股期权是什么品种?可以交易哪些品种?场外个股期权是指在场外市场进行交易的个股期权合约,与在交易所交易的标准化个股期权有所不同,它是由买方和卖方通过私下协商,而非通过公开交易所进行买卖和定价…...
每日学术速递8.5-3
1.BoostMVSNeRFs: Boosting MVS-based NeRFs to Generalizable View Synthesis in Large-scale Scenes 标题: BoostMVSNeRFs:将基于 MVS 的 NeRFs 提升到大规模场景中的可泛化视图合成 作者:Chih-Hai Su, Chih-Yao Hu, Shr-Ruei Tsai, Jie-…...
C#针对kernel32.dll的一些常规使用
1、前言 Window是一个复杂的系统,kernel32是一个操作系统的核心动态链接库文件。它提供了大量的API函数,提供了操作系统的基本功能。 2、Ini使用 Ini文件读写使用时,我们需要用到其中的一些函数对文件进行读写。 API: /// &l…...
电话营销机器人的优势
在人工智能的新趋势下,企业开始放弃传统外呼系统,转而使用电话销售机器人,那么使用机器人比坐席手动外呼好吗,真的可以代替人工坐席外呼吗,效率真的高吗? 1、 真人式语音 电话销售人员可以将自定义的话术…...
Oracle SQL Developer 连接第三方数据库
首先Oracle SQL Developer除了支持连接Oracle数据库外,还支持连接第三方数据库,包括: Amazon RedshiftHiveIBM DB2MySQLMicrosoft SQL ServerSybase Adaptive ServerPostgreSQLTeradataTimesTen 首先,你需要在菜单Tools > Pr…...
OSPF路由协议多区域
一、OSPF路由协议单区域的弊端 1、LSDB庞大,占用内存大,SPF计算开销大; 2、LSA洪泛范围大,拓扑变化影响范围大; 3、路由不能被汇总,路由表庞大,查找路由开销大。 二、如何解决OSPF单区域的问题? 引入划分区域 1、每个区域独立存储LSDB,划分区域减小了LSDB。 2、…...
微信聊天记录安全备份与全平台管理指南:从数据危机到永久保存
微信聊天记录安全备份与全平台管理指南:从数据危机到永久保存 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 你的微信数据正面临哪些隐形风险? …...
【Linux开发】03Linux 线程同步:信号量(Semaphore)
一、问题:互斥量只能“锁”,不能“排队” 前面我们学习了互斥量,它可以解决多个线程同时访问共享资源的问题,保证同一时间只有一个线程进入临界区。但互斥量只能做到“互斥”,无法控制线程的执行顺序。 1.1 需要控制顺…...
Linux 线程:从虚拟地址空间到 POSIX 线程控制全解析
前言在 Linux 系统编程与操作系统原理中,线程是并发执行的核心单元,而虚拟地址空间与分页机制是线程共享资源、轻量化运行的底层基石。本文将从线程本质、内存管理原理、进程线程对比、POSIX 线程控制、地址空间布局到线程封装,层层拆解 Linu…...
高斯数据库(GaussDB)SQL 常用语句总结
高斯数据库(GaussDB)SQL 常用语句总结 高斯数据库(GaussDB)是华为基于 PostgreSQL 开源生态开发的企业级分布式关系型数据库,兼容标准 SQL 92/99/2003,同时支持 PostgreSQL 语法,还自带分布式、高可用特性。 下面按日常开发高频场景整理最实用的 SQL 语句,直接复制就…...
Phi-3-mini-128k-instruct在WSL2中的高效部署与性能调优
Phi-3-mini-128k-instruct在WSL2中的高效部署与性能调优 如果你是一名Windows用户,同时又对运行最新的大语言模型充满兴趣,那么“如何在Windows上高效地跑模型”这个问题,可能已经困扰你很久了。直接在Windows上部署,环境配置复杂…...
CppJieba中文分词:如何用C++实现高性能文本处理的终极解决方案
CppJieba中文分词:如何用C实现高性能文本处理的终极解决方案 【免费下载链接】cppjieba "结巴"中文分词的C版本 项目地址: https://gitcode.com/gh_mirrors/cp/cppjieba 在中文自然语言处理领域,CppJieba作为"结巴"中文分词的…...
2026届最火的AI写作助手解析与推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 有效地削弱文本所表现出的机器生成特征,是降低AIGC率的核心要点所在。其一&…...
自然语言处理实战指南:从文本表示到深度学习
自然语言处理实战指南:从文本表示到深度学习 标签:#自然语言处理、#人工智能、#大模型、#大模型实战、#transformer、#机器学习、#深度学习 模块四:项目实战 技术对比 避坑经验 4.1 项目实战(中文商品评论情感分析) …...
5 种常见数据导入报错及高效排查指南
1. 编码异常:乱码与字符集不匹配 数据导入过程中最让人头疼的莫过于打开文件发现满屏乱码。我遇到过最夸张的情况是某次导入CSV文件,所有中文字符都变成了"锟斤拷"——这其实是UTF-8与GBK编码冲突的典型表现。 常见错误特征: 文件打…...
Shopify开发者必看:用Postman搞定GraphQL Admin API的完整流程(含Java代码示例)
Shopify开发者实战:Postman与Java整合的GraphQL Admin API高效开发指南 GraphQL正在重塑电商API的交互方式,Shopify作为全球领先的SaaS电商平台,其Admin API的GraphQL实现为开发者提供了更灵活的数据操作能力。本文将带您从零构建完整的开发工…...
