jmeter--2.常用组件以及作用域

目录

1.常用的组件以及执行顺序

2.常用的组件作用

2.1 测试计划:jmeter启动,其它组件的容器

2.2 线程组(测试片段):代表一定虚拟用户数,测试片段代表模块

2.3 配置元件:配置信息

2.4 前置处理器:请求之前的操作

2.5 逻辑控制器:可以控制采样器(samplers)的执行顺序

2.6 定时器:控制延迟请求

2.7 取样器:发送请求

2.8 后置处理器:请求之后的操作,通常用于提取响应数据

2.9 断言:判断结果是否正常

2.10 监听器:收集和查看结果


1.常用的组件以及执行顺序

测试计划>>线程组(测试片段)>>配置元件:配置信息>>前置处理器>>逻辑控制器>>定时器>>取样器>>后置处理器>>断言>>监听器

2.常用的组件作用

2.1 测试计划:jmeter启动,其它组件的容器

(1)一个完整的测试计划包含了一个或多个【线程组、逻辑控制器、采样器、监听器、定时器、断言和配置元素】测试计划添加or删除元件

(2)线程组之间在执行是没有顺序。如果希望线程按顺序执行,则需要在测试计划中勾上【独立运行每个线程组】

示例:

2.2 线程组(测试片段):代表一定虚拟用户数,测试片段代表模块

线程组

1. 线程组也可以看作是一个虚拟用户组。线程组中的每一个线程都可以理解为一个虚拟用户

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

  • continue-继续:继续执行接下来的操作
  • Start Next Thread Loop-启动下一进程循环:开始下一次循环
  • stop Thread-停止线程:退出该线程(不再执行此线程的操作)
  • stop Test-停止测试:等待当前执行的采样器结束后,结束整个测试
  • Stop Test Now-立即停止测试:马上停止测试

3. 线程属性

  • Number of Threads(users)-线程数:相当于模拟的用户数量
  • Ramp-up Period(in seconds):达到指定线程需要的时间,例如线程数为100时间设定为10s,那么就是10s加载 100个线程,每秒启动的线程数=100/10=10
  • Loop Count-循环次数:如果填具体的数值,就是循环对应的次数;如果选择“Foreve-永远”,则一直执行下去,直到手动停止
  • Delay Thread creation until needed:延迟线程创建,直到需要才创建

线程数为10,循环次数为10,那么一共要进行的数为10*10

4. 调度器:需要勾选上调度器,调度器配置才生效

  • 持续时间:测试计划持续多长时间
  • 启动时间:测试计划延迟多长时间后才启动

测试片段

特殊的线程组,和线程组同级别。用于多个测试之间协同做接口测试。主要是和模块控制以及Include控制结合使用。

特点:

1.默认是禁用状态。

2.单个测试片段无法执行,需要结合模块控制器或者Include控制器执行

模块控制器

Include控制器

2.3 配置元件:配置信息

具体细节见:【接口自动化测试】Jmeter(3)配置元件 - 知乎

  • CSV Data Set Config:用于读取CSV文件中保存的参数
  • HTTP信息头管理器:支持用户添加或者重写HTTP请求头
  • HTTP Cookie管理器:自动的处理有cookie关联的接口
  • HTTP请求默认值:可以设置HTTP请求控制器使用的默认值
  • Random Variable:该元件能够生成随机数字,且可以指定格式输出
  • 计数器:可以在线程组任何位置创建,允许用户配置起点、最大值和增量。配置后,计数器将从起点循环到最大值,然后重新开始,直到线程结束
  • 用户自定义变量:用户自定义变量,通过表达式 ${变量名} 引用变量的值

2.4 前置处理器:请求之前的操作

具体细节见:【接口自动化测试】Jmeter(4)前置处理器 - 知乎

2.5 逻辑控制器:可以控制采样器(samplers)的执行顺序

具体细节见:https://www.cnblogs.com/nnniki/p/12829704.html

  • 简单控制器:让我们组织我们的采样器和其它的逻辑控制器(分组功能),提供一个块的结构和控制,并不具有任何的逻辑控制或运行时的功能
  • 循环控制器:指定其子节点运行的次数,可以使用具体的数值,也可以使用变量
  • 仅一次控制器:在测试计划执行期间,该控制器下的子结点对每个线程只执行一次,登录场景经常会使用到这个控制器
  • ForEach控制器:ForEach控制器一般和用户自定义变量一起使用,其在用户自定义变量中读取一系列相关的变量。该控制器下的采样器或控制器都会被执行一次或多次,每次读取不同的变量值
  • 事务控制器:事务控制器会生产一个额外的采样器,用来统计该控制器子结点的所有时间
  • If 控制器: 根据给定表达式的值决定是否执行该节点下的子节点,默认使用javascript的语法进行判断

2.6 定时器:控制延迟请求

具体细节见:jmeter-定时器_jmeter定时器-CSDN博客

2.7 取样器:发送请求

具体细节见:【接口自动化测试】Jmeter(7)取样器 - 知乎

  • https协议端口:443
  • http协议端口:80

2.8 后置处理器:请求之后的操作,通常用于提取响应数据

具体细节见:https://www.cnblogs.com/ZhengYing0813/p/11845188.html

2.9 断言:判断结果是否正常

具体细节见:JMeter 常用的几种断言方法,你会几种呢? - 知乎

2.10 监听器:收集和查看结果

具体细节见:Jmeter之监听器_jmeter监听器-CSDN博客

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

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

相关文章

文心一言 VS 讯飞星火 VS chatgpt (177)-- 算法导论13.3 6题

六、用go语言,说明如果红黑树的表示中不提供父指针,应当如何有效地实现 RB-INSERT。 文心一言: 红黑树是一种自平衡的二叉搜索树,其中每个节点都包含一个颜色属性(红色或黑色),并且满足以下性…

对自动化测试断言的思考

断言在自动化测试中起着关键的作用,它是验证测试结果是否符合预期的重要手段。如果在自动化测试过程中忽视了断言,那么这个测试就失去了其本质的意义,因为我们无法得知测试结果是否达到了预期的效果。因此,断言在自动化测试中的重…

【QUARTZ】springboot+quartz动态配置定时任务

Quartz 介绍 Quartz 定时任务可分为Trigger(触发器)、Job(任务)和Scheduler(调度器),定时任务的逻辑大体为:创建触发器和任务,并将其加入到调度器中,如下图所…

【服务器】服务器管理 - cockpit开启

开启cockpit #!/bin/bashsed -i s/is():where()/is(*):where(*)/ /usr/share/cockpit/static/login.jssystemctl enable --now cockpit.socket #开启cockpit服务systemctl start cockpit.socket 登录 https://ip:9090

03.分支结构

分支结构 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构。然而仅有顺序结构并不能解决所有的问题,比如我们设计一个游戏,游戏第一关的通关条件是玩家获得1000分,那…

uniapp-uniCloud的基本使用(编写云存储的地区级联选择器)

目录 新建项目,创建 uniCloud 服务空间并关联 1. 新建项目 2. 创建 uniCloud 服务空间并关联 manifest.json内未配置Appld,请重新获取后再 云数据库的使用 城市选择和云数据库 介绍 云端数据 DB Schema概述 新建项目,创建 uniCloud 服务空间并关…

【机器学习300问】4、机器学习到底在学习什么?

首先我们先了解一个前置问题,再回答机器学习到底在学习什么。 一、求机器学习问题有哪几步? 求解机器学习问题的步骤可以分为“学习”和“推理”两个阶段。首先,在学习阶段进行模型的学习,然后,在推理阶段用学到的模型…

实现秒杀功能设计

页面 登录页面 登录成功后,跳转商品列表 商品列表页 加载商品信息 商品详情页 根据商品id查出商品信息返回VO(包括rmiaoshaStatus、emainSeconds)前端根据数据展示秒杀按钮,点击开始秒杀 订单详情页 秒杀页面设置 后端返回秒杀…

1.12 力扣中等图论

797. 所有可能的路径 - 力扣(LeetCode) 给你一个有 n 个节点的 有向无环图(DAG),请你找出所有从节点 0 到节点 n-1 的路径并输出(不要求按特定顺序) graph[i] 是一个从节点 i 可以访问的所有节…

Window Docker安装

1.下载安装Docker 在Windows上安装Docker桌面_Docker中文网 (dockerdocs.cn)https://dockerdocs.cn/docker-for-windows/install/index.html2.安装完,修改镜像 Docker——Windows版本Docker安装_docker windows-CSDN博客https://blog.csdn.net/weixin_51351637/ar…

基于Linux的Flappy bird游戏开发

项目介绍 主要是使用C语言实现,开启C项目之旅。 复习巩固C语言、培养做项目的思维。 功能: 按下空格键小鸟上升,不按下落; 显示小鸟需要穿过的管道; 小鸟自动向右飞行;(管道自动左移和创建&a…

训练营第四十二天 | 01背包问题,你该了解这些! ● 01背包问题,你该了解这些! 滚动数组 ● 416. 分割等和子集

01背包问题 二维 代码随想录 dp二维数组 优化 01背包问题 一维 代码随想录 dp一维数组 416. 分割等和子集 把数组分成总和相等的两份,如果数组总和为奇数,不能分割,若有符合的数组子集,返回true 代码随想录 class Solution {p…

Java内存模型之原子性

文章目录 1.什么是原子性2.Java中的原子操作有哪些3.long和double的原子性4.原子操作 原子操作 ! 原子操作 1.什么是原子性 一系列的操作,要么全部执行成功,要么全部不执行,不会出现执行一半的情况,是不可分割的。 注意&#x…

Android perfetto memory开源工具分析

目录 原理 官网链接 下载heap_profile producer_support.cc 本地编译 push heapprofd 工具使用 pb文件获取 打开*.pb文件 trace文件 提高系统CPU性能 拆解特定函数内存占用 环境配置 工具使用 修改heap_profile 脚本 原理 Android perfetto memory分析工具和ma…

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin(2)

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin(2) 在 https://zhangphil.blog.csdn.net/article/details/135374279 基础上,增加一个功能,当手指在上面的图片…

如何使用SVN查看旧版本

和目录 第一步:打开SVN客户端 第二步:浏览历史版本 第三步:还原历史版本 结论 Subversion (缩写为SVN)是一种常用的版本控制系统,它可以帮助团队协作开发软件项目。除了基本的版本控制功能外,SVN还提供了许多其他功…

【已解决】如何用递归实现位运算计算两数之和

本博文源于笔者正在思考的如何用递归进行计算两数之和。读者一般都会想到用while循环进行操作&#xff0c;位运算两数之和的思想就犹如辗转相除法。文章并附加了对这个方法的流程演示 问题来源 想要用递归实现两数之和。 代码实现 #include<stdio.h> int add(int num…

(十)IIC总线-PCF8591-ADC/DAC

文章目录 IIC总线篇起始&#xff0c;终止信号应答信号发送&#xff0c;读取数据IIC通讯规则 PCF8591-ADC-DAC篇特性一般说明地址Control byte&#xff08;控制字&#xff09;简单了解一下DAC电阻分隔链应用为王DAC的应用如何设置DAC输出如何调用DAC功能 ADC的应用ADC采集特点AD…

【群晖NAS】记一次FRP报错:login to server failed: connection write timeout

报错如下&#xff1a; rongfuDS224plus:~/fff/frp$ ./frpc -c ./frpc.toml 2024/01/12 23:08:31 [I] [root.go:139] start frpc service for config file [./frpc.toml] 2024/01/12 23:08:41 [W] [service.go:131] login to server failed: i/o deadline reached 2024/01/12 2…

Java中的栈和队列操作,相互实现(力扣 232, 225)

栈和队列&#xff08;Java&#xff09; Java中的 栈 & 队列 操作栈的使用队列的使用 LeetCode 232. 用栈实现队列我的代码 LeetCode 225. 用队列实现栈我的代码 Java中的 栈 & 队列 操作 栈的使用 栈的方法功能Stack()构造一个空的栈E push(E e)将e入栈&#xff0c;并…