JMeter三大重要组件——线程组、取样器、查看结果数(3)

news2025/1/10 10:15:43

在这里插入图片描述


JMeter三大重要组件

  • 一、JMeter三大重要组件——线程组
    • 1、作用:JMeter主要通过线程组来运行用户脚本
    • 2、在取样器错误后要执行的动作:
    • 3、线程属性
    • 3、调度器
    • 4、setUp线程组和tearDown线程组
  • 二、JMeter三大重要组件——取样器
    • 1、基本
      • a、自动重定向和跟随重定向
    • 2、高级
      • a、连接时间
      • b、响应时间
      • c、代理服务器
  • 三、JMeter三大重要组件——查看结果数
    • 1、所有数据写入一个文件
    • 2、取样器结果分析
    • 3、请求
    • 4、响应数据

一、JMeter三大重要组件——线程组

1、作用:JMeter主要通过线程组来运行用户脚本

线程数:代表虚拟用户数

在这里插入图片描述

2、在取样器错误后要执行的动作:

继续: 当取样器出现错误后,继续执行
eg:取样器2的错误,并没有影响到取样器3的运行

在这里插入图片描述

启动下一进程循环: 当线程组中,有循环次数时,循环体中的取样器如果有任何一个报错,那么终止当前循环,进入下一个循环,相当于continue

在这里插入图片描述
在这里插入图片描述

停止线程: 当取样器出现错误后,运行取样器的当前线程停止,其他线程不受影响。

在这里插入图片描述
在这里插入图片描述

停止测试: 当取样器出现错误后,停止全部线程
在这里插入图片描述

立即停止测试: 当取样器出现错误后,立刻停止全部线程,而不等待线程是否运行结束

在这里插入图片描述

3、线程属性

线程数: 执行当前线程组下的业务脚本时,需要启动的线程数。如果设置N个,那么会有N个线程同时运行线程组下的业务脚本。

Ramp-UP时间(秒) : 指启动全部线程所需要耗费的时间,一般结合线程数使用。

例如:如果设置线程数为3,Ramp-UP时间为30,那么理论上启动3个线程需要消耗30秒。其中:第0秒启动第1个,第10秒启动第2个,第20秒启动第3个,间隔时间为30S/3个=10S/个, 这也说明了为什么20秒的时间执行了全部的线程

间隔时间计算公式:Ramp-UP时间(秒) / 线程数

在这里插入图片描述

在这里插入图片描述

延迟创建线程直到需要: 默认情况下,测试开始的时候,所有线程就全部创建了。
如果勾选了此选项,那么线程在需要用到的时候才创建。

在这里插入图片描述

3、调度器

持续时间:允许JMeter运行的时间
启动延迟:延迟XX秒开始运行JMeter

在这里插入图片描述
本来第0秒启动第1个线程
有延迟时间:所以延迟5秒启动第1个线程
本来:第15秒启动第2个线程
有延迟时间:所以延迟5秒启动第2个线程,第20秒启动第2个线程

有持续时间:10秒,超过了持续时间的最大值
Ramp-UP时间,设置的是30秒
持续时间到了10秒之后就不会再启动任何线程了所以第20秒没有启动任何线程

在这里插入图片描述
JMeter运行总时间 = 持续时间+ 启动延迟
注意:当JMeter运行的时间达到设置的持续时间上限后,停止测试时,只会发送停止的信号;而是否停止还会受到线程的控制。如果线程处理阻塞状态,那么就算达到持续时间上限也不会停止

4、setUp线程组和tearDown线程组

在这里插入图片描述

作用:执行setUp线程组->线程组->tearDown线程组

二、JMeter三大重要组件——取样器

1、基本

在这里插入图片描述

a、自动重定向和跟随重定向

在这里插入图片描述

客户端JMeter访问的是http协议的京东页面
京东服务器就返回了一个302错误给JMete客户端
要JMeter客户端根据响应头当中的Localion主动的跳转
到https的京东页面

如果没有自动重定向和跟随重定向
那么jmeter就不会根据302的响应头中的Location去自动重新发送请求
在这里插入图片描述
如果勾选了跟随重定向那么jmeter会把跟随的过程在查看结果树中的子集进行展示

在这里插入图片描述
在这里插入图片描述

如果勾选了自定重定向那么jmeter只会展示最终的结果
在这里插入图片描述

2、高级

在这里插入图片描述

a、连接时间

JMeter客户端向京东服务器发送请求时
第一步要先建立TCP连接,建立连接时,也需要消耗时间
如果消耗的时间超过了Jmeter设置的最大连接时间
那么JMeter主动抛出错误,不再等待建立连接的过程

b、响应时间

服务器处理时间+jmeter客户端收到响应的时间的和(a3+a4+L)与设置的响应时间对比
如果大于超时时间,jmeter主动断开连接

在这里插入图片描述

c、代理服务器

在这里插入图片描述

三、JMeter三大重要组件——查看结果数

在这里插入图片描述

1、所有数据写入一个文件

在这里插入图片描述
会有错误提示框,点击确定即可
在这里插入图片描述
继续执行启动按钮,即可在指定的目录下生成文件

记事本打开test.jtl文件,可以得到取样器信息
在这里插入图片描述

2、取样器结果分析

在这里插入图片描述
Load time: 该次请求所消耗的总时间
Connect Time: 建立连接所消耗的时间
Latency:网络传输时间+服务器内部处理时间
Size in bytes: 整个接口请求+响应数据包大小
Sent Bytes:接口请求数据包大小
Headers size in bytes: 响应头大小
Body size in bytes: 响应体大小
Sample Count:1 取样器数量,指发送了多少个请求
Error Count:错误数量
Data type (“text”|“bin”|“”) : 响应数据的格式
Response code: 响应状态码
Response message: 状态消息
ContentType: text/html;charset=utf-8 响应体格式
DataEncoding: utf-8 数据包编码格式

3、请求

在这里插入图片描述
Request Body:请求体的内容
包括请求方法、URL、请求体、Cookie的内容
Request Headers:请求头

4、响应数据

在这里插入图片描述
扩展:Content-Type有哪些常见类型
text/html: html格式
application/json: json格式
application/x-www-form-urlencoded: 表单格式
application/form-data: 扩展表单格式,一般用它传递文件

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

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

相关文章

Obsidian多端同步插件LiveSync

网友 Leo 和 Paco反馈,群晖升级到 DSM7.2 ,注册表可以搜索镜像,根据 Leo 贴的 /var/packages/Docker/etc/dockerd.json 的内容,DSM7.2 应该是使用了 https://docker.nju.edu.cn 作为注册表镜像,但老苏测试过下面几种情…

易基因:易基因近期染色质免疫共沉淀测序(ChIP-seq)研究成果|项目集锦

大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 在生物学研究中,DNA与蛋白质之间的互作(DNA-Protein Interactions,DPIs)是至关重要的,参与基因的表达、调控、复制、重组和修复…

m 序列(最长线性反馈移位寄存器序列)详解

本专栏包含信息论与编码的核心知识,按知识点组织,可作为教学或学习的参考。markdown版本已归档至【Github仓库:https://github.com/timerring/information-theory 】或者公众号【AIShareLab】回复 信息论 获取。 文章目录 m 序列 (最长线性反…

Git进阶系列 | 8. 用Reflog恢复丢失的提交

Git是最流行的代码版本控制系统,这一系列文章介绍了一些Git的高阶使用方式,从而帮助我们可以更好的利用Git的能力。本系列一共8篇文章,这是最后一篇。原文:Using the Reflog to Restore Lost Commits[1] “Reflog”是Git不太为人所…

常见的未授权漏洞批量检测工具

常见的未授权漏洞检测 命令行版已放出支持多线程,批量扫描,指定服务扫描,命令行版地址https://github.com/xk11z/unauthorized_com GUI版unauthorizedV2已更新,可批量ip检测导出结果 项目包含 1 、FTP 未授权访问&#xff08…

SadTalker AI模型使用一张图片与一段音频便可以自动生成视频

SadTalker模型是一个使用图片与音频文件自动合成人物说话动画的开源模型,我们自己给模型一张图片以及一段音频文件,模型会根据音频文件把传递的图片进行人脸的相应动作,比如张嘴,眨眼,移动头部等动作。 SadTalker,它从音频中生成 3DMM 的 3D 运动系数(头部姿势、表情),…

webstorm配置vue开发环境

🌳🌳🌳前言:本文章针对于如何用IDE和webstorm运行一个别人的vue项目进行步骤记录。 📙参考:(10条消息) idea配置vue开发环境_idea配置vue运行环境_drinkworld的博客-CSDN博客https://blog.csdn.net/drinkwo…

VSCode ssh ubuntu20显示图像界面

1、在vscode中安装 Remote X11(SSH) 2、在本地端安装MobaXterm 点击Settings-->Configurations-->X11,设置如下: 3、在服务端修改 ~/.bashrc文件,在末尾添加 export DISPLAY"192.168.0.201:0.0" 其中引号中内容为本地端IP地…

英伟达股价能否凭借AI进一步上涨到500美元?

来源: 猛兽财经 作者:猛兽财经 猛兽财经在之前的关于英伟达的分析中(5月2日),就认为英伟达在人工智能方面的增长潜力还没有完全释放出来,并认为英伟达的股价将会很快涨到300美元,结果到了6月…

代码随想录二刷 day34 | 贪心之1005.K次取反后最大化的数组和 134. 加油站 135. 分发糖果

1005.K次取反后最大化的数组和 题目链接 解题思路: 两次贪心 如何可以让数组和最大呢? 局部最优:让绝对值大的负数变为正数,当前数值达到最大,整体最优:整个数组和达到最大 如何转变K次正负,让…

CASS打印地形图操作

1、打开地形图,如下: 2、在“工程应用”菜单栏中,选择“查询两点距离及方位”,如下: 3、量取地形图的大致范围大小,如下: 读取图上距离,用于设置纸张大小。 4、点击左上角打印图形&…

【算法题】神奇的斐波那契数列(Fibonacci sequence)、青蛙跳台阶问题、矩阵中的路径

神奇的斐波那契数列和青蛙跳台阶问题 一、神奇的斐波那契数列1.1、题目描述1.2、递归算法1.3、迭代法1.4、小结 二、青蛙跳台阶问题2.1、题目描述2.2、思路2.3、动态规划法2.4、小结 三、矩阵中的路径3.1、题目描述3.2、思路3.3、代码实现3.4、小结 总结 一、神奇的斐波那契数列…

卫星地图应用经典实例项目(7个)

本文会介绍引用一些非常好的卫星地图等相关的应用,一方面给大家增加见识,另一方面会提供一些设计开发的思路以及代码。 文章目录 热气球追踪系统googlemap实现卫星轨迹satvis卫星Cesium系统NASA的worldview系统项目Esri-Satellite-Map基于leaflet的卫星轨迹绘制项目地球当前…

关于Altium Designer 差分线规则设置的方法纠偏

本文适用于AD20以后版本。在AD的原理图及pcb的4年设计学习中,入门课是学校的AD09,简单的两层板绘制。后来因工作需要,就报了培训班,学习了基于AD19的相关使用方法。后来在很多的项目开发中,逐渐发现之前从书本、培训课…

Qt QGraphicsScene模块实现圆点绘制在所有窗体的最前方,实现圆点的“彩色拖尾”效果以及“选中方框”效果

文章目录 前言1、效果2、代码实现2.1 思路2.1.1 “拖尾”效果2.1.2 “选中方框区域”效果2.2 代码 总结 系列文章: (一)Qt 将某控件、图案绘制在最前面的方法,通过QGraphicsScene模块实现 (二)Qt QGraphics…

【SCI/SSCI/EI录用案例】仅26天录用,1天见刊

【Unionpub学术】录用/见刊/检索案例:2023年6月10日-2023年6月16日 2区材料类SCI 【期刊简介】IF:3.5-4.0,JCR2区,中科院3区 【检索情况】SCI 在检,正刊 【征稿领域】降解材料及其相关技术的研发,如聚合物基轻质材…

PyTorch 2简介:卷积神经网络

介绍 在本系列的上一部分中,我们使用了CIFAR-10数据集,并介绍了PyTorch的基础知识: 张量及其相关操作数据集和数据加载器构建基本的神经网络基本模型的训练和评估 我们为CIFAR-10数据集中的图像分类开发的模型只能在验证集上达到53%的准确率&…

Observability:为 Logstash 输出配置 SSL/TLS - Elastic Agent

在我之前的文章 “Observability:如何把 Elastic Agent 采集的数据输入到 Logstash 并最终写入到 Elasticsearch”,我详细介绍了如何使用 Elastic Agents 采集数据并把数据通过 Logstash 发送至 Elasticsearch。细心的开发者可能注意到从 Elastic Agents…

Jmeter(三) - 从入门到精通 - 测试计划(Test Plan)的元件(详解教程)

1.简介 上一篇中我已经教你如何通过JMeter来创建一个测试计划(Test Plan),那么这一篇我们就将JMeter启动起来,创建一个测试计划(Test plan),然后现在给大家介绍一下测试计划(Test P…

Redis和数据库保持数据一致性方案

Redis和数据库一致性又称为“双写一致性”,在分布式系统中,由于多个节点之间的并发读写操作,可能导致数据不一致的情况发生。本文将着重介绍如何通过使用Redis与数据库相结合的方案来实现数据一致性。 数据不一致产生的原因: 首先…