JMeter逻辑控制器之ForEach控制器

1. 背景

  前段时间在对某项目进行测试,存在一个需要遍历所有组织机构后给每个组织下新增部门的场景,其实也可以通过在数据库中直接添加数据这种方式来实现,但是有点风险,可能会生成脏数据,后期也不好排查,最好的方式的就是模拟从前端页面操作一样,所以就考虑到用JMeter实现。

2. 目的

  • 了解ForEach组件的基础功能;
  • 熟悉ForEach的使用场景;
  • 学会使用ForEach组件;

3. ForEach组件介绍

  ForEach 控制器循环访问一组相关变量的值。 将采样器(或控制器)添加到 ForEach 控制器时,每个样本(或控制器) 执行一次或多次,其中在每个循环中变量都有一个新值。 输入应由多个变量组成,每个变量都使用下划线和数字进行扩展。
  它特别适合与正则表达式后处理器一起运行。 这可以从前一个请求的结果数据中“创建”必要的输入变量。 通过省略“”分隔符,可以使用 ForEach 控制器通过以下方式循环遍历组 输入变量refName_g,还可以遍历所有匹配项中的所有组 通过使用 refName${C}_g 形式的输入变量,其中 C 是计数器变量。 (但是博主更倾向和JSON提取器_后置处理器配合使用)

组件面板

在这里插入图片描述

参数说明

属性描述必填
名称树中显示的此控制器的描述性名称
输入变量前缀要用作输入的变量名称的前缀。默认为空字符串作为前缀。
循环的起始索引循环变量的起始索引(不包括)(第一个元素位于起始索引 + 1)
循环的结束索引循环变量的结束索引(包括)
输出变量变量的名称,可在循环中使用,以便在采样器中进行替换。默认为空变量名称,这很可能是不需要的。
使用分隔符如果未选中,则省略“_”分隔符。是的

3. ForEach示例

  接口响应中返回的json数据格式中包含数组,且下一个接口需要调用的参数碰巧在数组中存在多个值,比如ID,orderNo等,则可以使用JSON Extractor提取多个值,然后用ForEach遍历参数进行赋值。
  本文以查询组织树下各个组织,提取组织id, 然后在每个组织下新建用户为例。

3.1 组织接口

  此id为组织机构
在这里插入图片描述

3.2 JSON提取器

通过JSON提取器获取组织机构ID,需要注意的是要获取所有的组织机构ID,具体实现如下所示:

JOSN提取器语法

在这里插入图片描述

3.2 ForEach控制器配置

  “输入前缀”是JSON提取器获取的变量值,“输出变量名称”的值是为了后续创建人员接口提供。
在这里插入图片描述

3.2 创建人员接口配置

  组织机构ID会遍历所有的ID。

在这里插入图片描述

3.2 结果

  大家可以看到,分别在4个组织下成功新建了人员。
在这里插入图片描述

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

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

相关文章

linux系统 CentOS Tomcat 部署论坛

jdk安装命令:yum -y install java-1.8.0-openjdk-devel.x86_64 结尾上显示下图为成功 检查jdk环境是否配置成功命令:java -version或javac 显示版本 显示信息 mysql安装: 检查是否存mariadb数据库:rpm -qa | grep mariad 卸载ma…

企业计算机服务器中了360后缀勒索病毒如何处理,勒索病毒应对步骤

网络技术的应用与发展,为企业的生产运营提供了有力保障,但也为网络安全威胁埋下隐患。近期,网络上的勒索病毒非常嚣张,严重影响了企业的生产运营。近日,云天数据恢复中心接到很多企业的求助,企业的计算机服…

嵌入式单片机的存储区域与堆和栈

一、单片机存储区域 如图所示位STM32F103ZET6的参数: 单片机的ROM(内部FLASH):512KB,用来存放程序代码的空间。 单片机的RAM:64KB,一般都被分配为堆、栈、变量等的空间。 二、堆和栈的概念 …

HBase 例行灾备方案:快照备份与还原演练

博主历时三年精心创作的《大数据平台架构与原型实现:数据中台建设实战》一书现已由知名IT图书品牌电子工业出版社博文视点出版发行,点击《重磅推荐:建大数据平台太难了!给我发个工程原型吧!》了解图书详情,…

秋招复习篇之代码规范

目录 前言 1、变量命名 2、代码空格 1)操作符左右一定有空格, 2)分隔符(, 和;)前一位没有空格,后一位保持空格,例如: 3)大括号和函数保持同一行,并有一个空格…

Python 网络编程之搭建简易服务器和客户端

用Python搭建简易的CS架构并通信 文章目录 用Python搭建简易的CS架构并通信前言一、基本结构二、代码编写1.服务器端2.客户端 三、效果展示总结 前言 本文主要是用Python写一个CS架构的东西,包括服务器和客户端。程序运行后在客户端输入消息,服务器端会…

虹科方案丨L2进阶L3,数据采集如何助力自动驾驶

来源:康谋自动驾驶 虹科方案丨L2进阶L3,数据采集如何助力自动驾驶 原文链接:https://mp.weixin.qq.com/s/qhWy11x_-b5VmBt86r4OdQ 欢迎关注虹科,为您提供最新资讯! 12月14日,宝马集团宣布,搭载…

Java在SpringCloud中自定义Gateway负载均衡策略

Java在SpringCloud中自定义Gateway负载均衡策略 一、前言 spring-cloud-starter-netflix-ribbon已经不再更新了,最新版本是2.2.10.RELEASE,最后更新时间是2021年11月18日,详细信息可以看maven官方仓库:org.springframework.clou…

获取Android和iOS崩溃日志的方法

文章目录 一、Android崩溃日志1、获取方法1.1 通过adb logcat获取1.2 通过adb shell dumpsys dropbox命令获取 2、导出设备Crash日志3、导出设备ANR日志4、常见日志类别 二、iOS崩溃日志1、获取方法1.1 xcode中打开1.2 手机上直接获取 2、Crash 头部信息 一、Android崩溃日志 …

js中深拷贝与浅拷贝的区别?如何实现一个深拷贝?(收藏好,用时好找)

文章目录 一、数据类型存储二、浅拷贝Object.assignslice()concat()拓展运算符 三、深拷贝_.cloneDeep()jQuery.extend()JSON.stringify()循环递归 四、区别小结 一、数据类型存储 前面文章我们讲到,JavaScript中存在两大数据类型: 基本类型引用类型 …

多维时序 | MATLAB实现SSA-GRU麻雀算法优化门控循环单元多变量时间序列预测

多维时序 | MATLAB实现SSA-GRU麻雀算法优化门控循环单元多变量时间序列预测 目录 多维时序 | MATLAB实现SSA-GRU麻雀算法优化门控循环单元多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.MATLAB实现SSA-GRU麻雀算法优化门控循环单元多变量时间序列预…

[C/C++]排序算法 快速排序 (递归与非递归)

目录 🚩概念: 🚩实现: ⚡1.hoare ⚡2.挖坑法 ⚡3.双指针法 🚩快速排序递归实现 🚩快速排序非递归实现 🚩概念: 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据比另一部分的所有…

Pytorch的讲解及实战·MNIST数据集手写数字识别

目录 一、前言与pytorch的下载 1、前言 2、下载pytorch ①创建虚拟环境 ②下载pytorch(cpu版) ③测试pytorch是否下载成功 ④使用jupyter notebook 但是使用不了torch的解决方法 二、pytorch的使用 1、Tensor的数据类型 ①torch.FloatTensor …

【nw.js】使用nw.js将html页面打包成exe免安装程序

文章目录 一、批处理zip命令(已有可跳过此步骤)二、nw.js包三、使用批处理命令打包成exe可执行文件四、使用EnigmaVB打包成免安装可独立运行的exe文件五、结束 一、批处理zip命令(已有可跳过此步骤) 下载zip,你可以到该…

53.网游逆向分析与插件开发-游戏反调试功能的实现-通过内核信息检测调试器

码云地址(master分支):https://gitee.com/dye_your_fingers/sro_-ex.git 码云版本号:b44fddef016fc1587eda40ca7f112f02a8289504 代码下载地址,在 SRO_EX 目录下,文件名为:SRO_Ex-通过内核信息…

取出一个时间序列中每一个元素里的日期Series.dt.date()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 取出一个时间序列中 每一个元素里的年月日 Series.dt.date [太阳]选择题 以下代码的输出结果中正确的是? import pandas as pd t pd.Series(pd.date_range("2023-12-28", periods4…

Java企业电子招投标系统源代码,支持二次开发,采用Spring cloud框架

在数字化采购领域,企业需要一个高效、透明和规范的管理系统。通过采用Spring Cloud、Spring Boot2、Mybatis等先进技术,我们打造了全过程数字化采购管理平台。该平台具备内外协同的能力,通过待办消息、招标公告、中标公告和信息发布等功能模块…

饥荒Mod 开发(二四):制作一把万能工具

饥荒Mod 开发(二三):显示物品栏详细信息 饥荒Mod 开发(二五):常用组件 总结 源码 饥荒中的每种工具都有独特的功能,比如 斧头用来砍树, 铲子用来 挖东西,鹤嘴锄用来挖矿, 锤子可以敲碎东西,所以…

2013年第二届数学建模国际赛小美赛A题数学与经济灾难解题全过程文档及程序

2013年第二届数学建模国际赛小美赛 A题 数学与经济灾难 原题再现: 2008年的市场崩盘使世界陷入经济衰退,目前世界经济仍处于低迷状态,其原因是多方面的。其中之一是数学。   当然,并非只有金融界依赖于并非总是可靠的数学模型…

postman使用-03发送请求

文章目录 请求1.新建请求2.选择请求方式3.填写请求URL4.填写请求参数get请求参数在params中填写(填完后在url中会自动显示)post请求参数在body中填写,根据接口文档请求头里面的content-type选择body中的数据类型post请求参数为json-选择raw-选…