1 添加方法:

  •   线程组右键-> 添加 -> 逻辑控制器 ->ForEach控制器
 
2 作用: 
  •   可以更方便JMeter后置处理器提取出来的多组数据,也可以定义具有特定规则的数据,用ForEach读取
3 各个组件介绍:
  

  •   输入变量前缀:变量的前缀
  •   开始循环字段:要读取的变量后缀,只能是数字,代表第一个读取的变量
  •   结束循环字段:要读取的变量后缀,只能是数据,代表第二个读取的变量
  •   输入变量名称:把读取的变量的结果保存到新的变量
  •   数字之前加
  •   上下划线"_"? : 变量前缀和变量后缀之间加不加下划线
 
4 操作案例
 案例1:获取查询天气页面中的接口名称
  • 第一步:先调试XPATH,访问天气页面
  • http://ws.webxml.com.cn/WebServices/WeatherWS.asmx
  • 看不清不要紧,这里的XPATH为://li/a[@href]//text()
  • 第二步:使用JMeter访问这个页面,并使用JMeter的XPATH测试工具进行调试
运行,看查看结果树中的XPATH Tester

  • 第三步:使用XPATH 后置处理器把天气接口的名称提取出来

第四步:添加调试取样器,然后运行查看调试取样器中,有没有JMeter变量

运行后,调试取样器中就有变量name,和name_1、name_2、...、name_6,7个变量了。

这是JMeter后置处理器提取数据的特点,它会把多个变量自动加上下划线和数字来存储,

这种结构刚好提供给For-Each控制器使用

第五步:添加For-Each控制器,让这个控制器读取name并保存为新的变量key

第六步:添加百度搜索接口,搜索的内容填写For-Each控制器输出的变量key

由于百度有安全限制,频繁访问会导致进入认证环节,所以取消跟随重定向,防止进入认证页面

第七步:运行查看结果

可以看到,每个请求按照For-Each的循环,分别读取了不一样的值。

这样既实现了多个接口的关联,也实现了使用For-Each控制器来使用上一个接口的返回值并分别提供给下一个接口使用。

Jmeter 之 forEach控制器的更多相关文章

  1. 『动善时』JMeter基础 — 40、JMeter中ForEach控制器详解

    目录 1.什么是逻辑控制器 2.ForEach控制器介绍 3.ForEach控制器的使用 (1)测试计划内包含的元件 (2)获取学院列表请求内容 (3)JSON提取器内容 (4)ForEach控制器内 ...

  2. Jmeter之ForEach控制器(配合正则表达式使用)

    在使用正则表达式提取响应信息时,存在部分信息有多个值,为了能使用所有的值,可以结合ForEach控制器使用. 一.界面显示 二.配置说明 1.名称:标识 2.注释:备注 3.输入变量前缀:是指需要提取 ...

  3. 如何在JMeter中使用ForEach控制器

    Jmeter中的ForEach Controller遍历变量数组. 在这个JMeter教程中,我们将使用ForEach控制器循环访问JSON数组. 有时我们需要解析响应并提取某些信息.例如,在测试AP ...

  4. Jmeter系列(37)- 详解 ForEach控制器

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 ForEach 控制器一般和用户 ...

  5. 测试开发jmeter forEach控制器

    测试开发jmeter forEach控制器 forEach控制器的使用场景:主要是对大量数据轮询就行接口请求 forEach控制器的使用前提:将数据进行参数化 测试开发jmeter forEach控制 ...

  6. JMeter 正则表达式提取器结合ForEach控制器遍历提取变量值

    正则表达式提取器结合ForEach控制器遍历提取变量值   by:授客 QQ:1033553122 1. 需要解决的问题 使用正则提取器提取了一组变量值,需要在其它sampler中,循环引用组中的某几 ...

  7. jmeter 正则获取参数集合和ForEach控制器结合使用

    怎么把第一个请求获取的返回的多个id,在第二个请求中逐个以单个id作为请求参数来请求? 为了解决这个问题,模拟下该场景 1.请求www.163.com 主页,获取响应中的所有数字,这个获取的数字集合暂 ...

  8. jmeter 正则获取参数集合和ForEach控制器结合使用(转)

    怎么把第一个请求获取的返回的多个id,在第二个请求中逐个以单个id作为请求参数来请求? 为了解决这个问题,模拟下该场景 1.请求www.163.com 主页,获取响应中的所有数字,这个获取的数字集合暂 ...

  9. Jmeter 逻辑控制器 之 ForEach 控制器

    一.认识 ForEach 控制器 如下,创建一个 ForEach 控制器 设置界面如下: 输入变量前缀:要进行循环读取的变量前缀 Start index for loop (exclusive):循环 ...

  10. jmeter学习笔记一foreach控制器

    ForEach控制器 输入变量前缀:上一步所提取的变量名的前缀,例如appid_1, 则appid就是前缀 start index for loop:循环的起始位置,默认为空也可 end index ...

随机推荐

  1. vue3.2中setup语法糖父组件如何调用子组件中的方法

    父组件如何调用子组件中的方法 父组件.vue <template> <div> <aa ref="testRef"></aa> &l ...

  2. vue2-vue3监听子组件的生命周期的两种方式

    1.生命周期 生命周期是指:vue实例从创建到销毁这一系列过程.vue官网生命周期如下图所示: vue的生命周期有多少个 beforeCreate, created, beforeMount, mou ...

  3. vue3中provide和inject的使用

    1.provide 和 inject 的讲解 provide和inject可以实现嵌套组件之间进行传递数据. 这两个函数都是在setup函数中使用的. 父级组件使用provide向下进行传递数据: 子 ...

  4. hover时行级元素变成了块级元素,导致位置错乱

    在hover时,i元素变成了块级元素: 导致这两个元素各自占了一行: 最终导致样式错乱: <div class="demo"> <!-- 添加图标 和 编辑图标 ...

  5. uni-app 实现下拉刷新功能

    我们在运用uni-app开发小程序或h5时,常常需要页面实现下拉刷新功能. 在 js 中定义 onPullDownRefresh 处理函数(和onLoad等生命周期函数同级),监听该页面用户下拉刷新事 ...

  6. 开源即时通讯(IM)项目OpenIM源码部署流程

    由于 OpenIM 依赖的组件较多,开发者需求不一,导致 OpenIM 部署一直被人诟病,经过几次迭代优化,包括依赖的组件 compose 的一键部署,环境变量设置一次,全局生效,以及脚本重构,目前 ...

  7. Spring源码之XML文件中Bean标签的解析1

    读取XML文件,创建对象 xml文件里包含Bean的信息,为了避免多次IO,需要一次性读取xml文件中所有bean信息,加入到Spring工厂. 读取配置文件 new ClassPathResourc ...

  8. 快捷方式 ABP——切换MySQL数据库

    当基于ABP开发一段时间后,切换数据库可以使用快捷方式 方法如下: 第一步: 前提是要知道所使用的数据库的版本 1. vs 2017需要点击XXX.XXX.EntityFrameworkCore,右键 ...

  9. 基于中文金融知识的 LLaMA 系微调模型的智能问答系统:LLaMA大模型训练微调推理等详细教学

    基于中文金融知识的 LLaMA 系微调模型的智能问答系统:LLaMA大模型训练微调推理等详细教学 基于 LLaMA 系基模型经过中文金融知识指令精调/指令微调(Instruct-tuning) 的微调 ...

  10. 金融时间序列预测方法合集:CNN、LSTM、随机森林、ARMA预测股票价格(适用于时序问题)、相似度计算、各类评判指标绘图(数学建模科研适用)

    金融时间序列预测方法合集:CNN.LSTM.随机森林.ARMA预测股票价格(适用于时序问题).相似度计算.各类评判指标绘图(数学建模科研适用) 1.使用CNN模型预测未来一天的股价涨跌-CNN(卷积神 ...