性能测试工具—jmeter的基础使用

1.Jmeter三个重要组件

1.1线程组的介绍: 

特点:

  1. 模拟用户,支持多用户操作
  2. 多个线程组可以串行执行,也可以并行执行

线程组的分类:

  1. setup线程组:前置处理,初始化
  2. 普通线程组:编写脚本
  3. teardown线程组:后置处理,环境恢复等

线程组的属性: 

参数介绍:

1.2HTTP请求:

参数介绍:

作用:向服务器发送http及https请求

参数:

1.3查看结果树:

案例1: 查看结果树中的HTTP请求中,有多个子的HTTP请求

2.Jmeter参数化

2.1本质:

使用参数的方式来替代脚本中的固定的测试数据

2.2实现方式:

  1. 定义变量(最基础)
  2. 文件定义的方式(所有测试数据都是固定的情况下)
  3. 数据库的方式(灵活,业务测试常用)
  4. 函数的方式(灵活,业务测试常用)

2.3用户定义的变量

2.4用户参数:

2.5CSV数据文件设置:

2.6函数:

3.Jmeter断言:

3.1定义:

检查实际的返回结果是否与预期结果保持一致

自动校验机制:自动判断响应状态码(2xx:成功,4xx/5xx:失败)

3.2分类:

  1. 响应断言:对任意格式的响应数据进行断言
  2. json断言:对json格式的响应数据进行断言
  3. 持续时间断言:对响应时间进行断言

3.3响应断言:

参数:

3.4JSON断言

参数:

3.5断言持续时间:

4.Jmeter关联:

4.1定义:

请求之间有依赖关系,一个请求的响应数据作为另一个的请求参数来传递

4.2分类:

  1. 正则表达式提取器:提取任意格式的响应数据
  2. Xpath提取器:提取HTML格式的响应数据
  3. JSON提取器: 提取JSON格式的响应数据

4.3正则表达式介绍:

正则表达式:就是一个公式,或者说一套规则,使用这套规则可以从任意字符串中提取出想要的数据内容

结论:

通过一个正则表达式可以提取出多组数据,每组数据设置对应的左边界和右边界即可

每一组数据都可以有一个或者多个值

正则表达式提取器:

4.4xpath提取器

参数:

4.5json提取器:

参数:

JMeter属性:

5.自动录制脚本

原理:

5.1jmeter脚本录制步骤

1.添加HTTP代理服务器,并进行配置

•加HTTP代理服务器:测试计划(右键)->非测试元件->HTTP代理服务器

•配置代理服务器的参数

2.开启windows操作系统的浏览器代理

3. 启动代理服务器,开始录制

4. 在浏览器页面中进行操作,成功后,就能在JMeter当中看到抓取到的接口请求了。

5.2当使用代理的过程中,发现抓不到包,几个可能的情况:

  1. 过滤规则设置有问题
  2. 重启Jmeter代理服务器或者重启Jmeter
  3. 换浏览器来使用(Chrome、IE)
  4. 检查PC机中的代理设置是否处于可用状态
  5. 拔掉网线,抓包

6.逻辑控制器:

6.1如果(if)控制器:

6.2循环控制器:

6.3ForEach控制器:

7.定时器:

7.1同步定时器:

7.1.1使用同步定时器的操作步骤?

1.添加线程组,设置线程数为n

2.添加HTTP请求

3.添加同步定时器

•设置并发线程数:同时发送请求的虚拟用户数

•设置超时时间:

Ø建议设置:不设置的话,若没有达到设置的线程数会一直死等

Ø不能设置太小:等待时间后还没达到设置的线程数,会释放已到达的线程

4.添加查看结果树

5.添加监听器-聚合报告

7.2常数吞吐量定时器:

案例:

(1)一个用户以 20QPS (20 次/s) 的频率访问百度首页,持续一段时间,统计运行情况

案例:1、模拟100个用户同时访问百度首页,统计各种高并发情况下运行情况(2)2个用户针对 (服务器的QPS要求:20QPS (20 次/s)) 的频率访问百度首页,持续一段时间,统 计运行情况

7.3固定定时器:

案例:

(1)IHRM系统登录错误3次后,锁定1分钟,等待1分钟后重新输入正确的用户名密码登录成功

请求方法:POST

请求URL:http://ihrm-test.itheima.net/api/sys/login

请求头:Content-Type: application/json;charset=UTF-8

请求体:{"mobile":"13800000002","password":"123456"}

步骤:

添加线程组

添加HTTP请求1 - 错误1次

添加HTTP请求2 - 错误2次

添加HTTP请求3 - 错误3次

添加HTTP请求4 - 正确用户名密码

在HTTP请求4下,添加固定定时器

添加查看结果树

8.jmeter分布式:

8.1应用场景:

当单个测试机无法模拟用户要求的业务场景时,可以使用多台测试机进行模拟,就是Jmeter的分布式测试 .

8.2原理:

8.3分布式相关注意事项:

  1. 关闭防火墙
  2. 所有的控制机、代理机、服务器都在同一个网络上
  3. 所有机器的Jmeter和JAVA版本必须一致
  4. 关闭RMI SSL开关

8.4分布式配置与运行:

9.jmeter报告:

9.1聚合报告:

补充:

正常情况下,响应时间的结果取平均值

当响应时间最大值特别高(超出平均水平特别多),导致平均值不能代表正常/大部分水平时,可以使用百分比时间

9.2HMTL报告:

10.并发数计算:

10.1普通方法: 

并发tps = 总请求数/总时间

只能满足最基本的要求,但是不能很好覆盖系统正常的使用情况

10.2二八原则

并发tps = 总请求数 * 80% / 总时间 * 20%

满足系统绝大多数情况下的应用场景的需要

根据业务运营数据的统计计算(通常用来做稳定性测试

并发TPS = 有效请求数 * 80% / 有效时间 * 20%

当运营数据统计越精确时,计算出的并发TPS与实际的越接近

根据用户峰值业务操作来计算(通常用来做压力测试

并发TPS = 峰值请求数 / 峰值时间 * 系数

满足峰值请求时间段内的负载量,系数取决于项目组对于未来业务量的评估

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

echers配置项:数据过多时,折叠数据缩放查看

当数据过多时,如上图所示的时间点,会自动折叠,此时鼠标缩放还不起作用,我们配置如下代码 let option {dataZoom: [{startValue: 05:00}, // 这个值需要跟 第一条 时间数据对应上{type: inside}], }配置后,就可以进行…

6个黑科技网站,用过才知真的好!

AI视频生成:小说文案智能分镜智能识别角色和场景批量Ai绘图自动配音添加音乐一键合成视频https://aitools.jurilu.com/ 迅捷画图 网址:weavesilk.com/ 这个网站虽然不怎么好玩,但确实是一个很好用的思维导图和流程图在线制作网站&#xff0…

哪款桌面便签app能帮助我提升工作效率

作为上班族,我们每天都要处理大量的工作事项,从策划方案到处理邮件,每一个环节都需高效且有条不紊。在这样的工作环境下,提升效率显得尤为重要。而选择一款优秀的桌面便签app,无疑是提高工作效率的关键。 桌面便签app…

对话YashanDB CTO陈志标:如何推动国产数据库长远发展

深圳计算科学研究院(以下简称“深算院”)是深圳市人民政府2018年11月批准建设的“十大基础研究机构”之一,由深圳市科技创新委员会主管、深圳大学举办、深圳市龙华区人民政府共建的二类事业法人单位。 崖山数据库系统YashanDB是深算院完全自主…

[论文笔记]Corrective Retrieval Augmented Generation

引言 今天带来论文Corrective Retrieval Augmented Generation的笔记,这是一篇优化RAG的工作。 大型语言模型(LLMs) inevitable(不可避免)会出现幻觉,因为生成的文本的准确性不能仅仅由其参数化知识来确保。尽管检索增强生成(RAG)是LLMs的一个可行补充…

好易点 | 上海厨卫展首秀人气爆棚,智能阳台备受瞩目

2024年5月14日,第28届中国国际厨房、卫浴设施展览会(简称:上海厨卫展)在上海盛大开幕。作为厨卫行业的年度盛事,本次展会不仅汇聚了众多国内外知名品牌,更成为了展示前沿五金厨卫臻品的重要平台。其中&…

基于51单片机的非接触式无线红外测温

基于51单片机的无线红外测温 (程序+原理图+设计报告) 功能介绍 具体功能: 1.采用红外温度传感器测温并用LCD1602显示; 2.按键为启动按键、保存按键、显示数据按键,可以实现对温度数值的控制…

vue3中实现简繁体转换

由于项目在大陆和台湾同胞同步使用,因此需要实现中文的简繁体转换,实现输入简体,能搜索出简体和繁体的相关内容,输入繁体,也能搜索出简繁体相关内容。忽略简繁体,扩大搜索范围。 引入插件: np…

第八篇 Asciidoc 输出 All In One HTML 解决图片无法显示问题

问题:我的图片显示不出来了 小明使用 Asciidoc 来记笔记,他将笔记输出为 HTML 文件。小丽向小明借笔记。小明将 Asciidoc 笔记输出为 HTML文件,并拷贝给了小丽。 但是,小丽发现,图片都显示不出来了。 小丽:小明,你给我的笔记,图片都显示不出来啊。 小明:是我给你的…

【数据结构】堆排序和Top-K问题(超详细)

文章目录 堆排序向上调整建堆向下调整建堆堆排序调整过程 Top-K问题 堆排序 排升序要建大堆,排降序要建小堆(这里以排升序为例) 排序思想: 1.首先将待排序的n个数建成大堆(此时堆顶是n个数里最大的). 2.将…

杨校老师项目之基于SpringBoot+Shiro+Vue的企业人事管理系统

1.获取代码: 有偿获取:mryang511688 2.技术栈 后端 SpringBoot MySQL mybatis-plus shiro Redis 前端 Vue Element-UI 3.开发环境 JDK1.8、Maven3.5.4、MySQL5.7、Redis5.0.5、IntelliJ IDEA、nodejs 4.内置功能 Springboot的项目,…

解锁音频转换:分享5款视频转换mp3的软件(新手必看)

在当今数字化时代,视频转换为MP3音频的需求日益增长,无论是提取音乐、制作音频剪辑,还是享受视频中的声音,都需要一款高效、易用的转换工具。 然而,在众多的选择中,如何找到适合自己的视频转换mp3的软件可…

抓包数据拓展_小迪网络安全笔记

一.Request请求数据包数据格式: 1.请求行:包括请求类型/请求资源路径.协议版本和类型; 例: 2.请求头:一些键值对,浏览器与web服务器之间都可以发送,特定某种含义;yi 3.空行:请求头与请求体之间用空行隔开; 4.请求体:要发送的数据(一般post提交会使用);例如:user123&pass…

⭐️宁波ISO14000认证:⭐️成就“绿色环保”王者之路⭐️

🌈宁波ISO14000认证:💘成就“绿色环保”🐲王者之路🍎 🤶宁波ISO14000认证:🐯铸就环保先锋,🦄引领绿色发展新征程🫎 🚂宁波&#xff0c…

STL <string>--------String的OJ题目

1.题目截图(把字符串转换成整数----atoi) 1.1题目解析(在代码里) class Solution { public:int myAtoi(string str) {// 100% 97.45% int len str.size();if(len 0)return 0;int i 0, flag 1, isSignal 0, res 0;while(…

香港人才引进落户条件有哪些?香港优才计划详细介绍!

香港人才引进落户条件有哪些?港府优才计划详细介绍! 拿到香港身份,不管是在内地还是在香港亦或是在海外,优势福利都特别多,成为了广大中产的追求。因为香港身份对于子女升学、住房、税收、养老等方面都有很大优势&…

【2024】最新微信小程序商城源码开源版 多用户无限多开+15大功能模块

随着微信小程序市场的蓬勃发展,越来越多的商家和企业意识到了微信小程序作为线上销售平台的重要性。为了满足广大用户的需求,分享一款2024年最新微信小程序商城源码开源版,该版本不仅支持多用户无限多开,还集成了15大功能模块&…

开发调试,远程访问内容、AI项目远程访问,需要的福利

下载地址 Windows 64位 (切勿直接在压缩文件中操作,全部解压到一处后再操作,请关闭某60(会胡乱拦截),可用其他任意安全软件)Mac OS X 64位 (给fastnat执行权限 chmod x ./fastnat_darwin_amd64 终端运行二进制,自行百度,当然建议使用docker方式安装)Linux 64位 (给fastnat执行…

5W 3KVAC隔离 宽电压输入 AC/DC 电源模块——TP05AL系列

TP05AL系列产品是一款经济型开板式开关电源,输出功率为5W,具有可靠性高、小体积、性价比高等特点,广泛用于工控和电力仪器、仪表、智能家居等相关行业。

微服务(Spring Clould)--Nacos的安装、配置

简介:(取自官网) Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了…