IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> (详细)Jmeter实现多线程执行请求1其返回值作为请求2的参数并循环发送请求2直至跳出循环 -> 正文阅读

[开发测试](详细)Jmeter实现多线程执行请求1其返回值作为请求2的参数并循环发送请求2直至跳出循环

一、案例场景

实现功能

多线程同时发送请求1,获得结果task_id作为请求2的参数,获取请求2返回值,如果status=running则循环请求2,直至status=success跳出循环,返回值皆是Json格式

二、Jmeter配置步骤

1. 线程组配置如下: (线程组中2个线程同时请求,循环1次)
在这里插入图片描述

2. 整体请求结构如下:(每个线程发送请求1后循环发送请求2)
在这里插入图片描述
3. 请求1结果格式

{
    "task_id": "XXXXX-XXXXX-XXXXX-XXXXX"
}

4. 请求2结果格式

{
    "email": [
        "XXXXXXXXX"
    ],
    "status": "success",	//running或success
    "task_id": "XXXXX-XXXXX-XXXXX-XXXXX",    //同请求1的task_id
    "task_reason": "",
    "task_result_files": [
        "URL1",
        "URL2"
    ]
}

线程组请求1配置

1. 请求1的参数配置如下:
在这里插入图片描述
注: 如果参数中包含文件,MIME Type一定要写正确
在这里插入图片描述
2. 为请求1添加后置处理器JSON Extractor:

因为要获取请求1的返回值,作为请求2的参数。所以添加后置处理器JSON Extractor获取返回值,其中$.task_id 是获取task_id值的表达式

jmeter中JSON Extractor用法参考文章点此
在这里插入图片描述

线程组请求2配置

请求2需要获取请求1的返回值,且在while循环中判断请求2的返回值是否跳出循环,目前我的配置只实现了请求2的循环,但当status为success时跳出循环这项未能实现

1. 请求2的参数配置如下:
在这里插入图片描述
请求2需要获取请求1后置处理器存放的值task_id,参数处获取task_id方式如图: ${task_id}

2. 为请求2添加正则表达式处理器:
在这里插入图片描述
正则表达式处理器的目的是在多个返回值字段中获取某个字段的值,这里获取的是status字段,我的正则表达式不一定正确,如果有知道正确答案的麻烦评论告诉我一下,谢谢~

3. 为请求2添加While Controller:

JMeter 逻辑控制之While循环控制器(While Controller)点此

添加WhileController是为了让线程组循环该请求,此处我的判断语句为:

${__javaScript("${status}"=="running")&&"${task_id}!=null"}  //当status=running且task_id不为null时循环

在这里插入图片描述

4. 为请求2添加固定定时器Constant Timer:

为每次线程组的循环请求 设置间隔时间,此处设置的4秒请求一次
在这里插入图片描述

三、启动线程组

启动线程组,查看请求2的返回结果
在这里插入图片描述

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-10-28 12:39:10  更:2021-10-28 12:39:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:42:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码