性能测试总结-根据工作经验总结还比较全面

news2024/10/5 20:25:14

性能测试总结

  • 性能测试理论
    • 性能测试的策略
      • 基准测试
      • 负载测试
      • 稳定性测试
      • 压力测试
      • 并发测试
    • 性能测试的指标
      • 响应时间
      • 并发数
      • 吞吐量
      • 资源指标
    • 性能测试流程
    • 性能测试工具
      • JMeter基本使用
        • 元件构成
        • 线程组
        • jmeter的分布式使用
    • jmeter测试报告
    • 常用插件
    • 性能测试的计算
      • 1.根据请求数明细数据计算满足的tps
      • 根据订单总量随时间变化计算测试并发数
      • 根据峰值计算

性能测试理论

性能测试的策略

注意这几个策略是要做压测的类型,基本工作中性能测试都要做,基本测试报告中都要有体现,
基准测试提供基础 测试依据;
负载测试测试不同负载下的压力标准;
稳定性测试 测试8小时以上的系统稳定性;
压力测试 测试高压下的稳定性;
并发测试 测试是否能经受住高并发;

基准测试

狭义上讲:就是单用户测试。测试环境确定后,对业务模型中的重要业务做单独的测试,获取单用户运行时的各项性能指标。

广义上讲:是一种测量和评估软件性能指标的活动。你可以在某个时刻通过基准测试建立一个已知的性能
基准线,当系统的软硬件环境发生变化之后再进行一次基准测试以确定变化对性能的影响。

负载测试

通过逐步增加系统负载,确定在满足系统的性能指标情况下,找出系统所能够承受的最大负载量的测试。

稳定性测试

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

·其他:并发测试、压力测试等

压力测试

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

✓	极限负载情况下导致系统崩溃的破坏性压力测试
✓	高负载下的长时间的稳定性压力测试

并发测试

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

性能测试的指标

响应时间

响应时问:指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的结果,整个过程所耗费的时间。

并发数

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

吞吐量

吞吐量 (Througbput):指的是单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力。

QPS (Query Per second)每秒查询数:即控制服务器每秒处理的指定
请求的数量

TPS (Transactions Per second) 每秒事务数:即控制服务器每秒
处理的事务请求的数量

•	 点击数
•	 错误率
•	 资源利用率

资源指标

根据经验,资源指标通常要求:
(1) CPU不高于75-85
(2) 内存不高于80
(3)磁盛工O不高子90
(4)网络不高于80

性能测试流程

在这里插入图片描述

性能测试工具

工具
. Loadrunner
• JMeter

JMeter基本使用

元件构成

取样器
逻辑控制器
前罝处理器
后罝处理器
断言
定时器
测试片段
配置元件
监听器

在这里插入图片描述

线程组

在这里插入图片描述

jmeter的分布式使用

jmeter分布式原理是一台主机下配置多台代理机;通过代理进行测试并将测试结果交给主机进行分析处理。
在这里插入图片描述
具体代理机和主机的配置如下图

在这里插入图片描述

配置完成后需要在代理机上启动jmeter-server;然后在主机上发起。

在这里插入图片描述

jmeter测试报告

jmeter可以通过命令行方式调用,这样生成报告比较方便,就在报告这里简单说下jmeter的命令行参数。

jmeter -n -t 脚本名.jmx -l test.txt -e -o ./outHtml

上面实例是运行测试脚本并测试完成后解析并生成报告

  • -n 无图像界面
  • -t 脚本文件
  • -l 日志
  • -e 生成报告
  • -o 输出 (-e -o 要一起用)

当然也可以执行不生成报告而需要时再根据日志文件生成报告命令如下:

jmeter -g test.txt -o ./httpOut

特别注意**:
jmeter是要配置环境变量的,不配置的话上述命令中jmeter前面要加上jmeter的路径,就是jmeter的解压路径下bin的下面。

常用插件

常用如下插件

  • Basic Graphs
  • Additionally Graphs
  • Custom Thread Groups
  • PerfMon

PerfMon可以用来监控测试机器的各项指标非常好用。总结下perfMon的使用下面:

在这里插入图片描述

在这里插入图片描述
非常简单就是你得在被监控的机器上启动代理啊,代理包就是ServerAgent这个包。启动下就可以。

性能测试的计算

性能测试怎么来决定需要多少机器多少负载呢,这个一个是取决于机器本身的性能,然后就是基于生产上的数据来估量计算了;基本计算方式如下。

1.根据请求数明细数据计算满足的tps

一般情况下能满足需求的tps计算公式:

计算tps = 总请求数 / 总时间

但是应用中不会有那么稳定的数据,工作中我们都会应用二八原则,既百分之八十的业务都发生在百分之二十的时间。所以公式如下。

计算tps = (总请求数 * 80%) / (总时间 * 20%)

根据订单总量随时间变化计算测试并发数

在这里插入图片描述

根据峰值计算

在这里插入图片描述

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

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

相关文章

【MySQL】多表查询

文章目录🎉多表查询🎈3.1 内连接查询🎈3.2 外连接查询🎈3.3 子查询最后说一句🎉多表查询 🎈3.1 内连接查询 语法 -- 隐式内连接 SELECT 字段列表 FROM 表1,表2… WHERE 条件;-- 显示内连接 SELECT 字段列…

LeetCode 特训 ---- Week1

目录 LeetCode 特训 --- Week1 两数之和 最长回文子串 删除有序数组中的重复项 删除有序数组中的重复项Ⅱ 删除链表中的重复元素 移动0 旋转链表 分隔链表 快慢指针(前后指针)用的好,链表,数组起码轻松打十个。 LeetCode…

videoPictureInPicture,视频画中画播放初探

从Chrome 70版本开始video元素开始支持画中画播放,简单写个demo体验一下 简介 在触发画中画之后视频会始终在右下角悬浮,不论是否在当前标签页或者是浏览器是否最小化。 可以在chrome内看任意视频时点击控制条的画中画按钮即可。 API 文档&#xff1…

人工智能机器人技术概述

移动机器人是一种能够在其环境中移动的自主或半自主机器人系统,通常是通过轮子或履带进行移动。这些机器人旨在在各种环境中执行各种任务,包括探索、监视、检查、运输和操作,包括室内和室外空间、危险区域甚至其他星球。 移动机器人配备传感…

日常记录:天梯赛练习集L1-048 矩阵A乘以B

题目: 给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra​行、Ca​列,B有Rb​行、Cb​列,则只有Ca​与Rb​相等时,两个矩阵才能相乘。 输入格式&…

【JAVA-模块四 流程控制语句】

JAVA-模块四 流程控制语句一 选择分支语句:if语句if第一种格式:if第二种格式 双分支:if的第三种格式:多条件分支switch多分支:注意:if语句和swich语句如何选择:二 循环语句:2.1 for循…

聚焦弹性问题,杭州铭师堂的 Serverless 之路

作者:王彬、朱磊、史明伟 得益于互联网的发展,知识的传播有了新的载体,使用在线学习平台的学生规模逐年增长,越来越多学生在线上获取和使用学习资源,其中教育科技企业是比较独特的存在,他们担当的不仅仅是…

Mars3D集成到ruoyi管理系统

尽管Mars3d的官网上提供了详尽的文档和API参考手册,但是在集成至ruoyi后天管理系统中时,还是碰到了不少问题: npm安装方式,若只安装mars3d,会提示找不到mars3d-cesium引用cesium相关库的时候,报404错误 这…

MongoDB基础学习总结及SpringBoot项目中的整合

前言 MongoDB 如今是最流行的 NoSQL 数据库之一,被广泛应用于各行各业中,很多创业公司数据库选型就直接使用了 MongoDB。MongoDB一经推出就受到了广大社区的热爱,可以说是对程序员最友好的一种数据库之一,下面主要是笔者在平常的…

大学刚毕业,用10000小时,走进字节跳动拿了offer

前言: 没有绝对的天才,只有持续不断的付出。对于我们每一个平凡人来说,改变命运只能依靠努力幸运,但如果你不够幸运,那就只能拉高努力的占比。 2020年7月,我有幸成为了字节跳动的一名测试开发&#xff0c…

IO流、多线程

FileInputStream FileOutputStream 原理: //1、创建一个FileOutputStream对象,构造方法中写入数据的目的地 FileOutStream fos new FileOutputStream("C:\\a.txt"); //2、调用FileOutputStream对象中的方法write,把数据写入文件中…

【微信小程序】关于实现自定义图片代替checkbox样式的记录

前言 checkbox很好使,使用中往往需要改变它的样式。 记录一下用自定义的图片代替原有样式的过程。 关于把checkbox从:变成的过程 正文 思路 问题拆分: ①如何修改checkbox的样式 ②如何使用图片代替原有样式 如何修改checkbox的样式 修…

氢原子的电子轨道半径、能量、速度

在https://blog.csdn.net/qq_35379989/article/details/130065868?spm1001.2014.3001.5501中我们已经给出了波尔模型的三大假设:定态假设、跃迁假设以及角动量量子化。 一、氢原子的轨道半径 在跃迁假设中,通过设定波尔模型轨道能量:与电子…

各种商业版本的ChatGPT已经推出了,还有必要搞个人的Chat吗?

一、引言 虽然市面上已经存在许多商业版本的ChatGPT交互产品,但在我们的开发中,决定专注于打造一个更加个性化、更贴合个人需求的智能助手。我们相信,每个人都是独一无二的,他们的需求也是各不相同的。因此,个人ChatG…

浅析PHP代码审计中的SQL注入漏洞

浅析PHP代码审计中的SQL注入漏洞1.概述2.普通注入3.编码注入宽字节注入二次urldecode注入4.漏洞防范gpc/rutime魔术引号过滤函数和类addslashes函数mysql_[real_]escape_string函数intval等字符转换PDO prepare预编译1.概述 SQL注入的攻击方式有下面几种: 在权限较…

常用电阻的作用

1、限流: 根据公式:I U / R;可知,电压固定的情况下,电阻越大,电流越小 常用于保护器件, 例如:MCU的输入输出信号线串联电阻,以避免电流过大,损坏元器件 …

快鲸scrm助力眼科机构提效客户运营,提升转化率

眼科机构普遍面临着以下几方面的业务挑战 (1)存在信任危机,用户决策周期长 眼睛是心灵的窗户,患者在对眼部治疗机构的选择上格外慎重,因而决策周期较长,眼科机构需要通过品牌建设、 IP 的打造、优质的产品…

SDL(2)-加载图片

加载BMP 1.使用SDL_init初始化SDL库 2.使用SDL_CreateWindow创建一个窗口 3.使用SDL_GetWindowSurface获取创建窗口的surface 4.使用SDL_LoadBMP加载一张BMP图片 5.使用SDL_BlitSurface将加载的bmp surface拷贝到窗口的surface 6.使用SDL_UpdateWindowSurface更新到窗口 …

【严重】vm2 <3.9.15 沙箱逃逸漏洞(CVE-2023-29017)

漏洞描述 vm2 是一个沙箱,用于在 Node.js 环境中运行不受信任的代码。宿主对象(Host objects)是指由 Node.js 的宿主环境提供的对象,例如全局对象、文件系统或网络请求等。 vm2 3.9.15之前版本中,当处理异步错误时未正确处理 Error.prepare…

中国大学哪家强?Python爬取排名榜,太棒啦(31)

小朋友们好,大朋友们好! 我是猫妹,一名爱上Python编程的小学生。 欢迎和猫妹一起,趣味学Python。 今日主题 如何用Python,抓取并分析2023中国大学排名数据。 用到的Python库有requests、bs4。 requests库 reque…