如果你想从头学习Jmeter,可以看看这个系列的文章哦

https://www.cnblogs.com/poloyy/category/1746599.html

前言

  • ForEach 控制器一般和用户自定义变量/JDBC结果变量一起使用,用于可以遍历读取相关的返回值
  • 该控制器下的 Samplers 和控制器都会被执行一次或多次,每次读取不同的变量值
  • ForEach 控制器和正则提取器是个好搭档,因为正则提取出来的变量值会用_分隔,而 ForEach 可以省略 _

ForEach

ForEach 界面介绍

字段含义

字段 含义
Input Variable Prefix 输入变量名的前缀,默认为一个空字符串作为前缀。
Start index for loop(exclusive)
  • 循环开始的索引
  • 不包括此值
  • 默认从 1 开始
  • 填 0 则起始索引是 1,填 1 则是 2
End index for loop(inclusive)
  • 循环结束的索引
  • 包括此值
  • 填 100 则结束索引是 100
Output variable
  • 输出的变量名
  • 在后续循环中,samplers 可使用的变量名
Add”_”before number
  • 输入变量名和索引之间是否有 _ 间隔
  • 不勾选的话,则输入变量名和索引直接相连

ForEach 结合用户自定义变量的栗子

线程组树结构

线程组,只有一个线程

用户自定义变量

一共有四个

ForEach

前缀为 name 的有四个变量,所以循环四次

运行结果

如果输出变量名称为空,需要怎么取循环的值?

直接取空即可 ${}

ForEach 不勾选 Add”_”before number 的栗子

线程组树结构

用户自定义变量

ForEach

运行结果

ForEach 结合 JDBC Request 的栗子一

线程组树结构

JDBC 运行结果

JDBC 一共返回 100 条数据,这里我们是通过 Variable names 去接住所有数据

ForEach

循环 100 次,输入变量 mobile_1 - mobile_100 并输出为 new_mobile_1 - new_mobile_100

运行结果

ForEach 结合 JDBC Request 的栗子二

线程组树结构

JDBC 运行结果

  • 这里通过 Result Variable name 去接住所有数据,相当于一个变量,是无法循环的
  • 所以我们需要通过正则提取器将需要的 mobile 字段的值提取出来

正则提取器

关于正则提取器更多知识点可看:https://www.cnblogs.com/poloyy/p/13179150.html

正则提取结果

我们要的其实是箭头的那些,但是正则会提取不必要的字段值(如:mobile_new_11_g0),所以注意 ForEach 的输入变量前缀要写正确

ForEach

循环 100 次,输入变量 mobile_new_1 - mobile_new_100 并输出为 mobile_1 - mobile_100

运行结果

Jmeter系列(37)- 详解 ForEach控制器的更多相关文章

  1. 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) C#中缓存的使用 C#操作redis WPF 控件库——可拖动选项卡的TabControl 【Bootstrap系列】详解Bootstrap-table AutoFac event 和delegate的分别 常见的异步方式async 和 await C# Task用法 c#源码的执行过程

    反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑)   背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ...

  2. Jmeter常用功能详解

    嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅

  3. jmeter 基础功能详解

    jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...

  4. PHP输出缓存ob系列函数详解

    PHP输出缓存ob系列函数详解 ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额 ...

  5. Jmeter 测试计划元素详解

    Jmeter 测试计划元素详解 by:授客 QQ:1033553122 由于篇幅问题,采用链接分享的形式,烦请复制以下网址,黏贴到浏览器中打开,下载 http://pan.baidu.com/s/1n ...

  6. jmeter --响应断言详解

    jmeter --响应断言详解 响应断言 :对服务器的响应进行断言校验 (1)应用范围: main sample and sub sample, main sample only , sub-samp ...

  7. SignalR新手系列教程详解总结(转)

    SignalR新手系列教程详解总结 GlobalHost.ConnectionManager.GetHubContext<TodoListHub>() .Clients.Clients(l ...

  8. 【WebApi系列】详解WebApi如何传递参数

    WebApi系列文章 [01]浅谈HTTP在WebApi开发中的运用 [02]聊聊WebApi体系结构 [03]详解WebApi参数的传递 [04]详解WebApi测试和PostMan [05]浅谈W ...

  9. 『动善时』JMeter基础 — 54、JMeter聚合报告详解

    目录 1.聚合报告介绍 2.聚合报告界面详解 3.聚合报告中信息点说明 (1)百分位数的说明 (2)吞吐量说明 提示:聚合报告组件的使用和察看结果树组件的使用方式相同.本篇文章主要是详细的介绍一下聚合 ...

随机推荐

  1. Java实现 LeetCode 69 x的平方根

    69. x 的平方根 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 示例 1: 输入: ...

  2. TZOJ Start

    描述 After the Online Round contest, we believe that you have already known how to write programs in A ...

  3. js动态绑定class(当前父级div下的子元素有没有这个class,有的话移除,没有的话添加)

    <div class="layui-inline" id=‘’   onclick="changeType(id)">                ...

  4. 哪些年,我们玩过的Git

    作者:玩世不恭的Coder公众号:玩世不恭的Coder时间:2020-06-05说明:本文为原创文章,未经允许不可转载,转载前请联系作者 哪些年,我们玩过的Git 前言一.前期工作常用基本概念的理解G ...

  5. Tomcat线程模型分析及源码解读

    1 四种线程模型  配置方法:在tomcat conf 下找到server.xml,在<Connector port="8080" protocol="HTTP/1 ...

  6. tab-switch 样式的添加 与 tab元素样式的切换

    要点: 1.多个div类名相同情况下添加class样式 2.siblings() 方法返回被选元素的所有同级元素.DOM 树:该方法沿着 DOM 元素的同级元素向前和向后遍历. 3.利用索引,只添加当 ...

  7. 上位机开发之西门子PLC-S7通信实践

    写在前面: 就目前而言,在中国的工控市场上,西门子仍然占了很大的份额,因此对于上位机开发而言,经常会存在需要与西门子PLC进行通信的情况.然后对于西门子PLC来说,通信方式有很多,下面简单列举一下: ...

  8. 简单说维特比算法 - python实现

    动态规划求最短路径算法,与穷举法相比优点在于大大降低了时间复杂度; 假如从起点A到终点S的最短路径Road经过点B1,那么从起点A到B1的最短路径的终点就是B1,否则如果存在一个B2使得A到B2的距离 ...

  9. 总结:PgSql备份pg_dump与还原pg_restore

    备份还原方法:pg_dump和pg_restore,先仔细说明这两个命令,再记录我的操作方法. 远程复制scp: #which scp  /usr/bin/scp #rpm -qf /usr/bin/ ...

  10. 总结:修改相关postgres用户密码

    1.修改linux系统postgres用户的密码 PostgreSQL会创建一个默认的linux用户postgres,修改该用户密码的方法如下: 步骤一:删除用户postgres的密码 sudo  p ...