性能测试详解(理论篇)

2023-11-05


性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

一.性能测试的分类

性能测试类型包括负载测试、强度测试、容量测试等。

1.负载测试

当负载逐渐增加时,系统各项性能指标的变化情况,系统是否能够承担

2.强度测试

在系统资源特别低的情况下,系统能否运行正常,这个资源低的下限在哪

3.容量测试

测出系统的界限和极限值

负载测试和压力测试的区别:
负载测试是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。

二.性能测试的指标

1.并发用户数

在客户端指一批用户同时执行一个操作,并发数反映了软件系统的并发处理能力

2.响应时间

客户端发出请求到得到响应的整个过程所经历的时间
响应时间= 客户端发起请求 + 网络传输时间 + 服务器处理时间

3.吞吐量

指单位时间内系统处理的客户请求的数量,直接体现软件系统的性能承载能力

4.资源利用率

指系统资源的使用程度,比如服务器的CPU利用率、内存利用率、磁盘利用率、网络带宽利用率、jvm利用率等

三.性能测试的目的

1.评估系统的能力
2.识别系统的弱点
3.系统调优
4.验证稳定性、可靠性

四.性能测试的范围

1.用户所体会到的系统响应时间是否够快?
2.应用服务器的资源使用情况是否合理?
3.数据库服务器的资源使用情况是否合理?
4.系统最多能支持多少用户访问?最大的业务处理量是多少?
5.系统是否支持7*24小时的业务访问?
6.系统是否能够实现扩展?更换哪些设备可以提高系统性能?
7.系统的架构设计是否合理?
8.数据库设计是否合理?
9.代码是否存在性能问题?
10.内存使用是否合理?
11.线程同步是否合理?
12.资源竞争是否合理?
13.如果存在性能瓶颈,应该如何调整?

五.性能测试流程

1.需求分析

测试需求分析
测试计划制定

2.测试设计

测试脚本编写
测试脚本调试
测试场景设计

3.测试执行

测试环境搭建
测试场景部署
测试场景执行
测试脚本调试

4.结果分析

测试结果分析
性能瓶颈分析
测试报告评估

六.性能测试环境

性能测试环境的搭建是性能测试的基础,那么环境最基础的是什么呢?当然是服务器软硬件资源。

1.硬件必须与生产环境一致

性能测试过程中,需要真实模拟生产的服务器硬件配置,这就要求在性能测试环境中使用与生产环境一致的服务器,比如服务器是几核CPU,几个G的内存,磁盘读取策略等等。

2.操作系统版本与生产环境一致

性能测试过程中,也需要真实模拟生产的操作系统,比如操作系统是Centos的还是Linux其他的版本,是32位的还是64位的,另外操作系统的补丁最好跟生产环境一致等等。

按道理测试环境应该与生产环境保持一致,但往往测试环境不具备像生产环境一样大的环境,这种情况下,我们该如何以测试环境下的数据去评估生产性能的可能状况呢?
评估。通过测出系统的性能指标,再根据硬件之间的对比进行评估

七.性能测试结果分析

查找瓶颈时按以下顺序,由易到难:
服务器硬件瓶颈 —— 网络瓶颈 —— 服务器操作系统瓶颈(参数配置) —— 中间件瓶颈(参数配置,数据库,Redis,web服务器等) —— 应用瓶颈(SQL语句,数据库设计,业务逻辑,算法等)

从哪几个角度对测试结果进行分析呢?
根据场景运行过程中的错误提示信息;
根据测试结果收集到的监控指标数据

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

性能测试详解(理论篇) 的相关文章

  • 2023年每天都投递很多份简历,但都石沉大海,我还投吗?测试人该何去何从?

    各大互联网公司的接连裁员 政策限制的行业接连消失 让今年的求职雪上加霜 想躺平却没有资本 还有人说软件测试岗位饱和了 对此很多求职者深信不疑 因为投出去的简历回复的越来越少了 另一面企业招人真的变得容易了吗 有企业HR吐槽 简历确实比以前多
  • JMeter入门教程(10) --函数助手

    文章目录 1 CSVRead 2 Random 3 RandomString 4 RandomDate 5 time 在JMeter的选项菜单中有一个 函数助手对话框 点击打开 函数助手 对话框 使用函数助手 我们可以从 选择一个功能 下拉
  • Linux性能监控 -- vmstat命令

    文章目录 示例 字段说明 示例 输入vmstat命令后 第一个参数表示每1秒获取一次服务器资源 第二个参数表示总共获取10次 若第二个参数不设置 则表示持续获取服务器资源 字段说明 数据项 含义 r 表示有多少任务需要CPU执行 通常与后5
  • loadrunner负载生成器;

    负载生成器 Load Generators 是脚本生成的负载引擎 相当于加压机 主要功能是生成虚拟用户进行负载 在默认的情况下使用本地的负载生成器来运行脚本 但是每生成一个虚拟用户 需要话费负载生成器大约2M 3M的内存空间 通常运行CON
  • 性能测试之Jmeter集合点

    01 计数器 计数器就是按照设置可以为每个用户迭代时进行计数 可以用作参数化 jmeter计数器设置 没勾选与每用户独立跟踪计数时 计数器每用户每迭代都会往上增加数字 到最大时可重新开始 勾选与每用户独立跟踪计数器时 每个线程也就是用户会单
  • 面试简历的最后一道坎,实战项目经验详解

    日常猫猫缓解气氛 说起面试 实战项目经验一定是面试官问的重中之重 原因无外乎以下几点 一 面试官问项目经验的目的 通过你做的项目来判断你的专业技能 资历段位 成绩表现与简历或自我介绍中描述的是否一致 通过你对项目细节的描述 看看你是否能够独
  • Jmeter进行压力测试不为人知的秘密

    jmeter是apache公司基于java开发的一款开源压力测试工具 体积小 功能全 使用方便 是一个比较轻量级的测试工具 使用起来非常简单 因为jmeter是java开发的 所以运行的时候必须先要安装jdk才可以 jmeter是免安装的
  • Jmeter 简单的压力测试!

    今天我们一起利用Apache Jmeter 一种接口测试工具 来进行压力测试学习 压力测试主要目的是测试负载均衡的实现效果 安装Jmeter这里就不做阐述了 上网下载个最新版就可以了 因为Jmeter是由JAVA语言开发的 所以安装之前先把
  • 软件测试/测试开发|最容易上手的Ubuntu虚拟机安装教程

    简介 我们在日常的学习和工作中 经常需要我们在Linux系统上部署环境或者执行测试 但是有时候服务器资源并没有这么好申请 特别是当我们在学习时 购买服务器会增加我们的成本 在这个时候 我们就可以使用虚拟机了 我们使用虚拟机来安装Linux系
  • 成为软件测试工程师需要学什么?

    成为 软件测试 工程师需要学习测试环境的搭建 前端开发知识 数据库 知识 测试理论基础 开发语言基础 自动化测试 进阶内容 1 测试环境的搭建 本部分主要是学习从 操作系统 开始 有关的计算机基础知识 软件和硬件知识 计算机理论知识 网络知
  • 性能测试:Jmeter压测过程中的短信验证码读取

    问题背景 现如今国内的大部分软件或者网站应用 普遍流行使用短信业务 比如登录 注册以及特定的业务通知等 对于这些业务 在使用Jmeter进行性能测试的过程中 就会需要自动获取和填入短信验证码 否则性能流程无法进行下去 由于绝大多数的系统其短
  • JMeter 性能测试基本过程及示例

    jmeter 为性能测试提供了一下特色 jmeter 可以对测试静态资源 例如 js html 等 以及动态资源 例如 php jsp ajax 等等 进行性能测试 jmeter 可以挖掘出系统最大能处理的并发用户数 jmeter 提供了一
  • 大厂测试员为了不加班,降薪去事业单位,半年后:还不如当测试员?!

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读1 9k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 性能测试:Jmeter压测过程中的短信验证码读取

    问题背景 现如今国内的大部分软件或者网站应用 普遍流行使用短信业务 比如登录 注册以及特定的业务通知等 对于这些业务 在使用Jmeter进行性能测试的过程中 就会需要自动获取和填入短信验证码 否则性能流程无法进行下去 由于绝大多数的系统其短
  • JMeter 性能测试基本过程及示例

    jmeter 为性能测试提供了一下特色 jmeter 可以对测试静态资源 例如 js html 等 以及动态资源 例如 php jsp ajax 等等 进行性能测试 jmeter 可以挖掘出系统最大能处理的并发用户数 jmeter 提供了一
  • 2024几个测试接口的好工具,效率加倍~

    作为一名后端程序员 一定要对自己写的接口负责 保证接口的正确和稳定性 因此 接口测试也是后端开发中的关键环节 但我相信 很多朋友是懒得测试接口的 觉得这很麻烦 一般自己写的接口自己都不调用 而是直接甩给前端或者其他调用方去验证 出了问题再改
  • 测试市场已经饱和了吗?现在转行软件测试会不会太迟?

    非常有意思的话题 某种程度上来说 测试职场一条从未设想过的道路真的走通了 这条路指广大测试呼吁对测试从业进行学历保护 专业保护 就像医学那样设置护城河 以一种令人意想不到的方式完成了 得益于大量培训机构为了赚钱 盲目的向大量非计算机相关专业
  • 【性能测试入门】:压力测试概念!

    压力测试可以验证软件应用程序的稳定性和可靠性 压力测试的目标是评估软件在极端负载条件下的鲁棒性和错误处理能力 并确保软件在紧急情况下不会崩溃 它甚至可以进行超出软件正常工作条件的测试 并评估软件在极端条件下的工作方式 在软件工程中 压力测试
  • 月薪2W的软件测试工程师,到底是做什么的?

    在生活中 我们常常会遇到以下几种窘迫时刻 准备骑共享单车出行 却发现扫码开锁半天 车子都没有反应 手机导航打车 却发现地图定位偏差很大 司机总是跑错地方 买个水 却遭遇自动售货机吐币 或者不找零钱 好不容易休息打个游戏 却一直出现卡顿 闪退
  • 2024拒绝行业内卷!八年软件测试20K*16薪行业心得 想入行必看

    目前工作做软件测试工作8年 属于高级测试员那个级别吧 现在看到各行各业的人都在转行学习软件测试 想给大家一些学习建议和忠告 很多粉丝都跟我说今年行情很差 找不到工资 真的找不到工作了吗 我们常在网上看到的 程序员饱和 程序员过剩 其实一般是

随机推荐

  • 泛统计理论初探——机器学习的欠采样算法

    统计学习 经典欠采样方法简介 机器学习中的欠采样方法 在之前的文章中己经介绍了重采样的方法和使用情况 本次文章将会介绍欠采样方法的原理和经典欠采样算法的步骤以及使用背景 从原理上来说 欠采样方法的思路是和重采样方法刚好相反的 因为重采样是针
  • 用于获得个股MACD数据及每日收盘数据的python程序

    用于获得个股MACD数据及每日收盘数据的python程序 几年前上一波股票牛市的时候 曾经编写了一个判断股价的python程序 最近几日股票市场又开始比较火热 估计有的朋友可能需要进行股票数据的获得和分析 现在把那个程序中用于获得macd数
  • STM32G0系列ADC扫描序列模式解读

    有人在使用STM32G0芯片的ADC模块时 往往因为扫描模式的理解不到位或选择不当导致些问题 这里就该话题做点简单分享介绍 不妨以一个实例展开 现在共用到ADC1模块的4个ADC通道 即1个片内Vrefint通道和其它三个外部通道CH8 C
  • 浏览器强制刷新页面

    Chrome官方推荐使用如下快捷键 就可以不使用页面缓存进行刷新 Windows和Linux操作系统 Shift F5 或 Ctrl Shift R Mac OS Cmd Shft R 如果上面方法没有效果 可以按下F12 Windows
  • 基于卡尔曼滤波进行四旋翼动力学建模(Simulink&Matlab)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 文献来源 摘要 由于近年来民用和军事领域对
  • redis的安装与配置

    解压redis包 make isntall进行安装 但是报错 找了半天 找到一个方法 在安装的时候加入参数 make MALLOC libc 就解决了 当然还有其他帖子的步骤 1 获取安装文件 wget http download redi
  • Caused by: java.lang.ClassNotFoundException常见异常解决方法!

    常见的Caused by java lang ClassNotFoundException异常原因 ClassNotFoundException属于checkException 检查异常 一般在项目启动的时候出现 出现该问题原因归纳为 1
  • 如何删除重复字符

    算法思路 第一种方法 蛮力法 最简单的方法就是把这个字符串看作是一个字符数组 对该数组使用双重循环进行遍历 如果发现有重复的字符 就把该字符置为 0 最后再把这个字符数组中所有的 0 去掉 此时得到的字符串就是删除重复字符后的目标字符串 代
  • vue3+ts的父子组件传参以及withDefaults、defineExpose用法介绍

    1 父组件给子组件传参 以及withDefaults用法介绍 父组件代码
  • 前端向后端请求数据,后端向数据库请求并回传过程

    一个select下拉框 点击不同的选项向后端请求相应机位的图片 1 首先在下拉框的 change 中添加向后端获取请求的接口 function getOtherImage camera axios get image other image
  • 前端例程20220906:霓虹灯效按钮

    演示 原理 按钮使用阴影实现发光效果 设置元素块加强外发光效果 设置为光标悬停时才显现 使用元素块定位到按钮下方 3D形变后进行模糊处理作为倒影 代码
  • 联想笔记本无线网络无法使用(无线开关已打开,但搜不到无线网络)

    今天 同事拿过来一台笔记本 说收不到无线网络了 插上有线可以上网 让给她看看 我看了一眼 果然是 插上网上后 是可以上网的 但就是收不到无线网络 本子是联想的 应该是很老的本子了 也没找到型号在哪 看了一下它的无线外置开关 是打开状态 但是
  • 铁腕军阀服务器无响应,铁腕军阀冬季攻势

    铁腕军阀冬季攻势是第一人称的3D动作射击类大作 游戏类型有点像半条命 通过杀敌可以获得游戏中的金币 然后购买更强力的武器来抵御一波又一波的敌人 游戏介绍 如果你是半条命系列的爱好者 那你可能会玩过一款叫Iron Grip The Oppre
  • GPIO口的pull up和pull down,no pull的意义以及怎么配置。

    一般来说 需要区分这个GPIO口用于输入还是输出 如果是output 那个一般选择no pull 这样 引脚才能根据你的output数据 进行正确输出 如果是input 那么需要看具体应用的默认输入值是0还是1 如果默认是输入0 则最好配置
  • 机器学习知识总结 —— 21. 什么是主成分分析

    文章目录 什么是PCA Principal Component Analysis 协方差矩阵 什么是协方差 协方差矩阵 特征值与特征向量 PCA降维 什么是PCA Principal Component Analysis 在机器学习中 PC
  • VSC/SMC(十五)——基于模糊逼近的积分滑模控制

    目录 前言 1 一阶系统积分滑模 1 1 一阶系统 1 2 控制器设计 1 2 1 选取积分滑模面 1 2 2 选取指数趋近律 1 2 3 Lypunov闭环系统稳定性证明 1 3 仿真分析 1 4 仿真结果 2 基于模糊切换增益调节的滑模
  • Win10下给Hyper-V配置网络——Bridging 和 Nat 模式

    Win10下给Hyper V配置网络 Bridging 和 Nat 模式 Hyper V 网络配置 桥接 好处 有 IP 可以被外部访问 Nat 没有 ip 外部不能访问 但可以访问外部 隐蔽性好 Hyper V 网络配置 yper V网络
  • ES7.7中highlight的结果丢失部分文本的bug

    本bug在windows版本 ES 7 7 0 和 7 15 2 中都可以再现 ik分词器已安装 并导入了扩展停止词 extra stopword dic Step1 先建立一个索引 在此之前 请确保已经安装分词器插件ik PUT test
  • python中sorted简单的使用

    sorted sorted iterable key 函数 reverse False 功能 排序 参数 iterable 容器类型数据 range对象 迭代器 key 指定 自定义函数或 内置函数 reverse 代表升序或者降序 默认是
  • 性能测试详解(理论篇)

    目录 一 性能测试的分类 1 负载测试 2 强度测试 3 容量测试 二 性能测试的指标 1 并发用户数 2 响应时间 3 吞吐量 4 资源利用率 三 性能测试的目的 四 性能测试的范围 五 性能测试流程 1 需求分析 2 测试设计 3 测试