什么是软件性能测试

2023-11-09

说到性能测试,想必大家都会有种种困惑,对于性能测试的概念也模糊得很,那么今天就和大家聊一聊什么是性能测试?性能测试其实是通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。通俗地说,性能测试就是要在特定的运行条件下验证系统的能力状态。

从用户视角来讲,关注点主要就是在前台界面的请求、事件的响应时间,操作页面是否有超时等待、体验不好、流畅度不够的地方;站在开发视角来说,就是改善设计、代码、系统设置来调优、修复多用户导致的故障和崩溃;负责系统运维的后台管理员,会比较重点关注系统配置的服务器占用和资源消耗,就是硬件上的系统容量、瓶颈、可扩展性、稳定性、可靠性、资源消耗。那性能测试其实就是兼顾前台界面、软件代码和硬件配置来保障系统性能,提供良好的用户体验,尽可能找出系统性能薄弱的环节,帮助进行性能优化。

软件性能如何来评估?性能是表明软件系统或构件对于其及时性要求的符合程度,一般可以用响应时间或吞吐量来衡量。对于交互系统而言,响应时间是对请求作出响应所需要的时间,是用户视角的软件性能的主要体现。

对于单个请求,指的是从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。吞吐量也是快速识别性能瓶颈的重点测试指标,RBI(基于风险评估的设备检验技术—Risk Based Inspection)指出:80%的系统性能瓶颈由吞吐量造成,吞吐量常用TPS来描述。

性能测试通俗来讲是为了描述测试对象与性能相关的特征并对其进行评价而实施和执行的一类测试。它主要通过自动化的性能测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项指标进行测试。今天带大家来了解一下性能测试的不同类型,以及每种性能测试类型都测试哪些方面。

性能测试大致分为以下六种:

第一种是Benchmark(标杆测试)又叫基准测试,主要是测试一些基础数据,给进一步建立性能模型提供依据,一般测试人员按照并发用户来执行脚本,校验脚本正确与否,为之后的压力测试和负载测试做准备;

第二种是Load(负载测试),对照预定的负载级别测试,不断升高级别,测试出系统的瓶颈,一般测试人员会根据实际情况对系统进行逐增逐减阶梯加压,依此观察系统的承载能力;

第三种是Stress(压力测试),也叫极限和峰值测试,持续在比较高的负载水平下测试,寻找系统无法承受的点,一般把这个点叫做性能拐点,拐点预示着资源耗尽或出现瓶颈,此后TPS将不再上升;

第四种是Endurance(耐久性测试),也叫稳定性测试,在长时间大压力环境下测试,测试系统性能的可靠性,一般会取峰值并发的80%进行N*24小时的验证,判端系统性能的可靠程度;

第五种是Scalability(可扩展性测试),也叫配置测试,对系统不同的横向扩展配置进行测试,测试出单位服务节点带来的性能增量,验证软件的横向扩展性;

最后一种就是Failover(失效恢复测试),针对有冗余备份和负载均衡的系统,检验发生局部故障时系统是否仍然能够正常工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是软件性能测试 的相关文章

  • 如何实现IM即时通信系统(一)

    在企业数字化建设过程中 如何与客户保持线上链接是重要的组成部分 而IM通信系统就属于数字化建设的基础设施 那么 如何实现一个符合企业需求的IM系统呢 采购当然是其中需要考虑的方式之一 但就我个人的经验来看 市面上好的IM厂商很稀少 因为IM

随机推荐

  • 哈希表(散列表)——C++数据结构详解

    目录 1 哈希表原理精讲 2 哈希链表算法实现 2 1哈希表数据结构定义 2 2哈希函数 2 3哈希链表初始化 2 4哈希链表查找函数 2 5哈希链表插入函数 2 6哈希链表删除元素 3 哈希表完整代码 哈希表 散列表 它是基于快速存取的角
  • [运放滤波器]4_积分微分电路

    动态系统的建模与分析 15 伯德图 bode图 为什么是20logM 分贝又是什么 动态系统的建模与分析 9 一阶系统的频率响应 低通滤波器 动态系统的建模与分析 8 频率响应 详细数学推导 G jw 滤波器 运放滤波器 3 反相同相比例放
  • java ssh连接_PuTTY 0.71 发布,开源的 SSH 和 Telnet 客户端

    PuTTY 最新版本 0 71 已发布 PuTTY 是一款集成虚拟终端 系统控制台和网络文件传输为一体的自由开源程序 它支持多种网络协议 包括 SCP SSH Telnet rlogin 和原始的套接字连接 它也可以连接到串行端口 其软件名
  • mysql 外连接总结

    原文 http blog sina com cn s blog 3d48dbb70100hyz4 html 了点时间总结了一下mysql中的内 外连接 转载注明 首先my sql 不支持oracle的 内连接 只连接匹配的行 左外连接 包含
  • 关于智能合约开发的真相

    就像 区块链 AI 和 云 这样的词语一样 智能合约 也是那些得到大量炒作的短语之一 毕竟 没有什么比不通过司法系统而让人们能够相信发生了什么更有意思的了 智能合约的承诺包括 自动 无须信任和公正地执行合约 在合约构建 合约执行和合约执行环
  • 狂神说 Docker笔记

    Docker概述 Docker为什么出现 Docker的思想来自于集装箱 JRE 多个应用 端口冲突 原来都是交叉的 隔离 Docker核心思想 打包装箱 每个箱子是互相隔离的 Docker通过隔离机制 可以将服务器利用到极致 Docker
  • ShardingSphere分库分表2-ShardingJDBC实战

    文章目录 一 ShardingSphere 二 ShardingJDBC实战 1 核心概念 2 测试项目介绍 3 快速实战 4 ShardingJDBC的分片算法 5 ShardingSphere的SQL使用限制 6 分库分表带来的问题 7
  • JAVA四大特征(抽象,封装,继承,多态)

    1 私有属性必须通过一个成员方法去控制和访问私有属性 2 访问控制修饰符 访问级别 访问控制修饰符 同类 同包 子类 不同包 公开 public 受保护 protected 默认 无 私有 private 3 继承 当多个类具有相同的属性
  • Oracle常见错误总结

    最近多次用到Oracle 主要就是导入dmp文件 然后将文件读出来并写进csv文件 在这过程中出现了一系列的问题 每次都几乎让我崩溃 一方面觉得Oracle用起来真麻烦 但是回过头想想 另一方面说明Oracle机制做的好 各种错误都能考虑到
  • MySQL学习笔记--菜鸟开始上路了!

    开篇话 用MySQL有一段时间了 但是发现自己没有系统的对SQL进行过深入学习 从这篇笔记开始对SQL进行系统学习 也希望和我情况一样的伙伴能够一起进步 学习前症状 状态适用 虽然顺利的把数据从库表中取出 但并不清楚它具体是怎样执行的 也不
  • LLVM系列第七章:函数参数Function Arguments

    系列文章目录 LLVM系列第一章 编译LLVM源码 LLVM系列第二章 模块Module LLVM系列第三章 函数Function LLVM系列第四章 逻辑代码块Block LLVM系列第五章 全局变量Global Variable LLV
  • Java 递归方法

    Java 递归方法 1 说明 定义 一个方法体内调用它自己 方法递归是一种隐式的循环 它会重复的执行某段代码 但这种重复执行无须循环控制 递归一定要向着已知的方向递归 否则这种递归就变成了无穷递归 类似于死循环 2 code 举例 publ
  • Redis7之哨兵(九)

    9 1介绍 哨兵巡查监控后台master主机是否故障 如果故障了根据投票数自动将某一个从库转换为新主库 继续对外服务 俗称无人值守运维 作用 监控redis运行状态 包括master和slave 当master down机 能自动将slav
  • VS2019 + Qt5.13 配置

    在安装完VS2019后 再安装Qt5 13选择安装msvc2017模块 再安装qt vsaddin插件 我选的是2 4版本 反正安装最新的也不会错 安装成功后 新建项目 发现问题 Entry Point Not Found 这是因为编译的版
  • python线程池 ThreadPoolExecutor

    python 线程池 ThreadPoolExecutor 实现步骤 代码实现 实现步骤 创建一个最大容纳数量为3的线程池 通过submit提交执行的函数到线程池中 通过done来判断线程是否完成 通过result来获取返回值 代码实现 c
  • VS code “密钥externalConsole已弃用,请改用console“的解决方法

    VS code 密钥 externalConsole 已弃用 请改用 console 的解决方法 原因 externalConsole 是旧版vscode cpp的密钥 决定输出和调试是在内部还是外部 新版vscode密钥已经改为 cons
  • 阿里巴巴Java开发规约插件

    代码规范的重要性 前不久很多公众号都在说因为代码规范性引起的血案 这事吧 我也没有太在意 好像后来证实根本不属实 但是 也说明了一个事情 代码规范真的很重要 附带一下查询的结果 搜索关键字 码农因代码规范 代码规范 真的很重要 很重要 很重
  • 《快速阅读术》优秀读后感范文4000字

    读书是一种很好的学习 学习是为了 学以致用 在寻求 学以致用 的实操的方法时 发现一个关于学习的金字塔模型 这是美国国家训练实验室的一个结论 听讲 阅读 视听和演示为被动学习 内容留存率比较低 不到30 这是为什么读了很多书 99 的内容都
  • pip安装python包时遇到的问题

    在windows 10种使用pip安装greenlet时 遇到下面这样一个错误 通过搜索发现有很多类似的情况发生在安装scrapy twisted等库的时候 看起来时需要一个c 编译器 安装vstudio实在太大了 网上也给出了不少解决方案
  • 什么是软件性能测试

    说到性能测试 想必大家都会有种种困惑 对于性能测试的概念也模糊得很 那么今天就和大家聊一聊什么是性能测试 性能测试其实是通过模拟生产运行的业务压力量和使用场景组合 测试系统的性能是否满足生产性能要求 通俗地说 性能测试就是要在特定的运行条件