当前位置: 首页 > news >正文

jmeter常用配置元件介绍总结之逻辑控制器

系列文章目录
安装jmeter

jmeter常用配置元件介绍总结之逻辑控制器

  • 逻辑控制器
    • 1.IF控制器
    • 2.事务控制器
    • 3.循环控制器
    • 4.While控制器
    • 5.ForEach控制器
    • 6.Include控制器
    • 7.Runtime控制器
    • 8.临界部分控制器
    • 9.交替控制器
    • 10.仅一次控制器
    • 11.简单控制器
    • 12.随机控制器
    • 13.随机顺序控制器
    • 14.吞吐重控制器
    • 15.Switch控制器
    • 16.模块控制器

逻辑控制器

1.IF控制器

功能:输入条件表达式,条件为真时,执行控制器里面的请求
参数说明

  • Expression:输入条件表达式,表达式的结果必须是true或者false;推荐使用_jexl3或_groovy来执行表达式
  • Use status of last sample:点击后会自动插入一个表达式,用来判断上一节点的取样器成功还是失败;成功则执行控制器里面的请求
  • Interpret Condition as Variable Expression:默认勾选的,勾选后条件解释为变量表达式,需要使用_jexl3或_groovy来执行表达式
  • Evaluate for all children:勾选后控制器里面的每一个子元素运行前都会判断条件表达式是否为true

如图:提取第一个请求的响应消息,判断响应消息是否符合预期的值,符合则执行控制器中的请求

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

2.事务控制器

功能:生成一个额外的示例,合并统计示例下的所有测试元素所花费的总时间
参数说明

  • Generate parent sample:勾选后,会把多个请求样本归类到事务控制器下,不勾选则是独立样本
  • Include duration of timer and pre-post processors in generated sample:勾选后生成的样本讲包括计时器、前置后置处理器等参数的延迟时间

如图:

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

3.循环控制器

功能:会将循环控制器里面的所有请求循环指定次数

提示:加上${__jm__控件名字__idx},如:${__jm__test__idx},可以查看循环的索引

如图演示:

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

如图:显示每次循环的索引

在这里插入图片描述

4.While控制器

功能:输入表达式,来控制,控制器里面的请求循环多少次
参数说明
Condition (function or variable):输入表达式,控制循环的次数;推荐使用_jexl3或_groovy来执行表达式;内容为空白时会一直执行

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

5.ForEach控制器

功能:对值进行前缀匹配,然后循环遍历,可以让控制器里面的请求的内容,结合每次遍历的结果来执行
如:某个参数需要执行不同的内容,其余的参数保持不变,就可以先定义内容,然后每次迭代循环该字段的值都会改变
参数说明
输入变量前缀:输入要变量的变量前缀,会根据前缀去匹配变量,只有符合前缀的变量才会被迭代
开始循环字段(不包含):可以理解为从第几个变量值开始迭代,不包含输入的值,应该实际迭代的值 = 输入的值 + 1
结束循环字段(含):迭代到第几个值结束,输入多少就对应第几个值结束
输出变量名称:参数化时的引用名
数字之前加上下划线:勾选后,遍历的变量名的前缀和数字之间必须要有_下划线

注意:
1.开始和结束字段的值一定要设置对,否则不会循环
2.遍历的变量名和输入的”输入变量前缀“有关联关系;变量名去掉输入的变量前缀剩余的字符串,必须是有序的整数数字或者下划线加有序数字;
如:输入变量前缀:test;则变量名必须是:test1,test2,…或者test_1,test_2…
如果是:testss;test01;test_01;等都是不会被迭代的
必须要有序数字,如:第一个变量是test1,第二个变量是test9;则只会迭代test1

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

6.Include控制器

功能:选择导入测试片段,能运行测试片段里面的脚本,重复利用已有的脚本不需要再次编写

注意:导入的测试片段不能有线程组

如图保存测试片段

在这里插入图片描述

如图演示:

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

7.Runtime控制器

功能:设置控制器下取样器运行时长,单位秒;比如:限时活动等有时间限制的场景可以使用

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

8.临界部分控制器

功能:设置同步所,确保同一时间每次只能有一个请求通过执行,适用于控制并发的场景;
可以理解为设置了一把锁,只有有锁的人才能通过,通过了就把锁释放掉,下一个占用到锁后才能通过

如图演示:我这里设置了5个线程数,控制器中的取样器设置了个延迟3秒的固定定时器,结果是每个请求的间隔都是3秒

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

9.交替控制器

功能:让控制器下面的请求、元素交替、轮流执行
参数说明

  • 忽略子控制器块:勾选后,会忽略子控制器的功能,让子控制器里面的元素也交替执行
  • Interleave across threads:勾选后,可跨线程交替,多个线程数的时候也会轮流交替请求

如图演示:设置了6个线程数,结果是每个线程交替的请求了不同的取样器
在这里插入图片描述
在这里插入图片描述

10.仅一次控制器

功能:控制器里面的取样器元素等,再多次循环中只会执行一次
适用场景:如有几个接口依赖于登录获取token,才能正常请求,此时登录接口就可仅执行一次用来提取token,后面的请求直接引用即可,避免重复多次请求登录接口

如图演示:设置了1个线程循环5次,结果是控制器下的请求只执行了1次

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

11.简单控制器

功能:没有实际的功能,作用是归纳分组元素,模块化封装让脚本结构更清晰
在这里插入图片描述

12.随机控制器

功能:控制器中的请求元素随机取一个执行,勾选,忽略子控制器块,会忽略子控制器的功能

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

13.随机顺序控制器

功能:控制器中每个请求元素都会被执行一次,但执行的顺序是随机的

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

14.吞吐重控制器

15.Switch控制器

功能:通过设置的Switch Value值来决定执行哪个请求

提示:有3种取值方式
1.输入节点位置顺序,从0开始;输入0会执行第一个取样器,1则执行第二个依次类推
2.直接输入取样器的名称:如”调试取样器-4“
3.value为空或者不存在时,默认执行第一个

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

16.模块控制器

功能:主要是为了方便测试代码、以及维护,
可以选中里面的测试片段,运行指定片段
在这里插入图片描述

相关文章:

jmeter常用配置元件介绍总结之逻辑控制器

系列文章目录 安装jmeter jmeter常用配置元件介绍总结之逻辑控制器 逻辑控制器1.IF控制器2.事务控制器3.循环控制器4.While控制器5.ForEach控制器6.Include控制器7.Runtime控制器8.临界部分控制器9.交替控制器10.仅一次控制器11.简单控制器12.随机控制器13.随机顺序控制器14.吞…...

解决Windows远程桌面 “为安全考虑,已锁定该用户账户,原因是登录尝试或密码更改尝试过多。请稍后片刻再重试,或与系统管理员或技术支持联系“问题

当我们远程连接服务器连接不上并提示“为安全考虑,已锁定该用户账户,原因是登录尝试或密码更改尝试过多。请稍候片刻再重试,或与系统管理员或技术支持联系”时,根本原因是当前计算机远程连接时输入了过多的错误密码,触…...

中文书籍对《人月神话》的引用(161-210本):微软的秘密

中文书籍对《人月神话》的引用(第001到160本)>> 《人月神话》于1975年出版,1995年出二十周年版。自出版以来,该书被大量的书籍和文章引用,直到现在热潮不退。 2023年,清华大学出版社推出《人月神话》…...

关于写React的一些反思和总结

这两个星期我都一直在写IT资产管理这个模块。关于这个模块,前端和后端都是我来处理,对于后端,我碰到了很多问题,但是很多问题都可以在比较短的时间内解决,而且不会说完全没有头绪的那种,这一方面源于我本身…...

Qt 每日面试题 -10

91、Qt设计界面有哪些方式? 手工编写创建界面的代码︰此方法比较复杂,不够直观;使用Qt Designer界面编辑器设计︰可直接拖放控件、设置控件的属性,简单、直观、易于操作;动态加载Ul文件并生成界面︰(QUiLoader类加载xx.ui)此方法很灵活,当需…...

三正科技笔试题

(15题,45分钟,闭卷) 一、( 8 分 )请问以下程序输出什么结果? char *getStr(void) 。 { char p[] "hellow world"; return p; } void test(void) { ch…...

Selective attention improves transformer详细解读

Selective attention improves transformer Google 2024.10.3 一句话:简单且无需额外参数的选择性注意力机制,通过选择性忽略不相关信息并进行上下文剪枝,在不增加计算复杂度的情况下显著提升了Transformer模型的语言建模性能和推理效率。 论…...

git配置用户信息

在 Git 中配置用户信息,主要是设置你的用户名和电子邮件地址,这些信息会被 Git 用来记录提交的作者信息。以下是配置用户信息的步骤: 打开命令行工具。 设置你的用户名: git config --global user.name "你的名字"例如…...

【eNSP】路由基础与路由来源——静态路由实验

路由是数据包从源地址到目的地址的传输路径,静态路由是指网络管理员手动配置的路由条目,用于指定数据包从源地址到目的地址的固定路径。以下是关于静态路由的详细介绍。 一、路由的基础知识点 路由的定义: 路由是指在计算机网络中&#xff…...

Python Web 应用开发基础知识

Python Web 应用开发基础知识 引言 随着互联网的快速发展,Web 应用程序的需求日益增加。Python 作为一种简单易学且功能强大的编程语言,已经成为 Web 开发中广受欢迎的选择之一。本文将深入探讨 Python Web 开发的基础知识,包括常用框架、基…...

STM32 标准库函数 GPIO_SetBits、GPIO_ResetBits、GPIO_WriteBit、GPIO_Write 区别

GPIO_SetBits: 使用例: GPIO_SetBits(GPIOA, GPIO_Pin_1 | GPIO_Pin_2);意思是将GPIOA1和GPIOA2设为高电平 GPIO_SetBits(GPIOA, 0x0003);意思也是将GPIOA1和GPIOA2设为高电平 实际上当选中GPIOA时,它会按位遍历,在哪一位有1说…...

【Redis_Day4】内部编码和单线程模型

【Redis_Day4】内部编码和单线程模型 五大数据类型内部编码object encoding key1:查询key1对应值的内部编码 redis中的单线程模型 redis中的数据都是以键值对的方式存的,redis内部用哈希表组织这些键值对。 五大数据类型 站在用户角度, 在一…...

Vue模块化开发的理解

Vue模块化是指在Vue.js开发中,将代码按功能拆分成多个独立的模块,以提高代码的可维护性、可读性和复用性。以下是对Vue模块化的详细理解: 一、Vue模块化的实现方式 组件化开发: Vue组件是模块化的基本单元,每个组件封…...

在Ubuntu22.04上源码构建ROS noetic环境

Ubuntu22.04上源码构建ROS noetic 起因准备环境创建工作目录并下载源码安装编译依赖包安装ros_comm和rosconsole包的两个补丁并修改pluginlib包的CMakeLists的编译器版本编译安装ROS noetic和ros_test验证 起因 最近在研究VINS-Mono从ROS移植到ROS2,发现在编写feat…...

算法--解决二叉树遍历问题

第一 实现树的结构 class Node(): # 构造函数,初始化节点对象,包含数据和左右子节点 def __init__(self, dataNone): self.data data # 节点存储的数据 self.left None # 左子节点,默认为None self.rig…...

[刷题]入门1.矩阵转置

博客主页:算法歌者本篇专栏:[刷题]您的支持,是我的创作动力。 文章目录 1、题目2、基础3、思路4、结果 1、题目 链接:洛谷-B2106-矩阵转置 2、基础 此题目主要考察二维数组的掌控能力。 3、思路 观察,可知&#…...

Flutter开发之flutter_local_notifications

flutter_local_notifications 消息通知 flutter_local_notifications地址 flutter_local_notifications: ^18.0.1class NotificationHelper {//工厂模式调用该类时,默认调用此方法,将实例对象返回出去static NotificationHelper? _instance null;sta…...

Gradle和maven

大家好,我是风筝 作为Java 开发者,你平时用 Maven 还是 Gradle? 我一直用的都是 Maven,但是前几天做了一个小项目,用的是 Gradle,因为项目创建出来默认就是用的 Gradle,而且功能足够简单&#x…...

RabbitMQ教程:发布/订阅模式(Publish/Subscribe)(三)

文章目录 RabbitMQ教程:发布/订阅模式(Publish/Subscribe)(三)一、引言二、简介三、准备工作3.1 说明3.2 生成项目 四、实战4.1 交换机(Exchanges)4.2 临时队列(Temporary Queues&am…...

服务器被挂马怎么办?——解决服务器被挂马的方法和步骤

服务器被挂马(即被植入恶意软件)是一个常见的网络安全问题,可能导致数据泄露、服务中断和经济损失。本文将详细介绍如何检测和清除服务器上的恶意软件,并提供实用的代码示例,帮助读者解决服务器被挂马的问题。 一、什…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

R语言速释制剂QBD解决方案之三

本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...

深入浅出Diffusion模型:从原理到实践的全方位教程

I. 引言&#xff1a;生成式AI的黎明 – Diffusion模型是什么&#xff1f; 近年来&#xff0c;生成式人工智能&#xff08;Generative AI&#xff09;领域取得了爆炸性的进展&#xff0c;模型能够根据简单的文本提示创作出逼真的图像、连贯的文本&#xff0c;乃至更多令人惊叹的…...

【大模型】RankRAG:基于大模型的上下文排序与检索增强生成的统一框架

文章目录 A 论文出处B 背景B.1 背景介绍B.2 问题提出B.3 创新点 C 模型结构C.1 指令微调阶段C.2 排名与生成的总和指令微调阶段C.3 RankRAG推理&#xff1a;检索-重排-生成 D 实验设计E 个人总结 A 论文出处 论文题目&#xff1a;RankRAG&#xff1a;Unifying Context Ranking…...

Cursor AI 账号纯净度维护与高效注册指南

Cursor AI 账号纯净度维护与高效注册指南&#xff1a;解决限制问题的实战方案 风车无限免费邮箱系统网页端使用说明|快速获取邮箱|cursor|windsurf|augment 问题背景 在成功解决 Cursor 环境配置问题后&#xff0c;许多开发者仍面临账号纯净度不足导致的限制问题。无论使用 16…...

PLC入门【4】基本指令2(SET RST)

04 基本指令2 PLC编程第四课基本指令(2) 1、运用上接课所学的基本指令完成个简单的实例编程。 2、学习SET--置位指令 3、RST--复位指令 打开软件(FX-TRN-BEG-C)&#xff0c;从 文件 - 主画面&#xff0c;“B: 让我们学习基本的”- “B-3.控制优先程序”。 点击“梯形图编辑”…...

【threejs】每天一个小案例讲解:创建基本的3D场景

代码仓 GitHub - TiffanyHoo/three_practices: Learning three.js together! 可自行clone&#xff0c;无需安装依赖&#xff0c;直接liver-server运行/直接打开chapter01中的html文件 运行效果图 知识要点 核心三要素 场景&#xff08;Scene&#xff09; 使用 THREE.Scene(…...