jmeter之跨线程关联

news2025/1/17 15:34:29

1)_setproperty函数:将值保存成jmeter属性

2)_property函数:在其他线程组中使用property函数读取属性

 一、跨线程接口引用变量

 1. 法一:jmeter自带函数_setProperty和_property

1. 1线程组 01

  • 创建登录的【HTTP请求】,并配置接口所需参数;
  • 创建【正则表达式提取器】,用正则表达式提取token字段;

applay to 选择“主请求和子请求” 

 

3、创建【BeanShel后置处理器】,编写脚本,将正则表达式中的变量变成全局变量:

利用函数助手:将需要提取的设置为全局变量

 

 

${__setProperty(p_csrf_token,${csrf_token},)};
  • 后面的 ${csrf_token} 是正则表达式提取器中的变量;
  • 前面的 csrf_token是新定义的全局变量,后续跨线程组使用时是使用的这个变量名。

1.2 线程组 02

使用上述变量处通过函数助手property参数化写入${__property(p_csrf_token,,)}即可实现跨线程组。

Jmeter之内置函数__property和__P的区别_jmeter property函数-CSDN博客 

 

创建并配置好【HTTP请求】

参数调用:

${__property(p_csrf_token,,)}

2. 法二:beanshell自带方法

String newToken = vars.get("token");//将变量token赋值给变量newToken

props.put("newToken1",newToken);//将newToken赋值给newToken1,此时newToken1已成为全局变量,其他线程直接引用${__P(newToken1)}

String aaa = props.get("newToken1");//获取全局变量newToken1复制给aaa

 BeanShell后置处理器

String newToken = vars.get("token");
props.put("newToken1",newToken);
String aaa = props.get("newToken1");

3. 法三:调用java方法

import org.apache.jmeter.util.JMeterUtils;

JMeterUtils.setProperty("newToken1","${token}");//将变量token赋值给全局变量newtoken1,其他线程直接引用${__P(newToken1)}

 BeanShell后置处理器 

import org.apache.jmeter.util.JMeterUtils;
JMeterUtils.setProperty("newToken1","${token}");

二、跨线程cookie关联 (token关联)

cookie和token都用此方法 

 1. 全局配置文件jmeter.propties

修改bin目录下全局配置文件jmeter.propties中的【CookieManager.save.cookies=true】--注意修改后需要重启jmeter

 

2.查看调试取样器(Debug Sampler) 

3. Cookie值设为全局变量

从调试取样器中取得Cookie的值并且设置为全局变量

注意:变量名不能随便取,必须响应头里面的变量名一致 

${__setProperty(W2S_lastvisit,COOKIE_W2S_lastvisit,)}
${__setProperty(W2S_visitor,COOKIE_W2S_visitor,)}
${__setProperty(csrf_token,COOKIE_csrf_token,)}

 

4. 设置Http Cookie管理器

把取得的值设置到Http Cookie管理器中

注意:

  • cookie管理器与线程组同一级
  • cookie管理器中的域一定要填写为正确的请求地址

 

5.跨线程组直接调用

 

 

三、 运行设置

让线程按顺序执行

 

运行结果 

 

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

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

相关文章

OriginPro作图之箱线图

前言 箱线图(Box-plot) 又称为盒须图、盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图。因型状如箱子而得名。 本文将结合实例阐述其意义和绘图过程。 箱线图简介 箱线图(Boxplot) 也称箱须图( Box-whisker Plot),是利用数据中的五个统计量…

FANUC机器人socket通讯硬件配置

一、添加机器人选配包 Fanuc机器人要进行socket通讯,需要有机器人通讯的选配包,1A05B-2600-R648 User Socket Msg,1A05B-2600-R632 KAREL,1A05B-2600-R566 KAREL Diagnostic,1A05B-2600-J971 KAREL Use Sprt FCTN。 二…

有没有一本从电路开始讲然后汇编再到C语言的书?

在开始前我有一些资料,是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!! 没有一本书或者几本书能把这整…

【NPU】A800-9000服务器8*Ascend 910 B的HCCS测试

HCCS集合通信带宽数据 HCCS集合通信带宽数据timeline信息在msprof_*.json文件的HCCS层级展示 summary信息在hccs_*.csv文件汇总。 支持的型号 Atlas 训练系列产品 Atlas A2训练系列产品 测试命令 npu-smi info -t topo结果展示 NPU0 NPU1 NPU2 NPU3 …

微信小程序实现美食检索功能

1、打开浏览器搜索:腾讯位置服务 2、注册一个账号,有账号的直接登陆就行 3、注册登陆成功后,点击控制台 4、进入控制台后点击我的应用——>创建应用 5、添加key,注意看注释 6、key添加成功后,开始分配额度(配额&…

人工智能(AI)与地理信息技术(GIS)的融合:开启智能地理信息时代

随着科技的不断发展,人工智能(AI)和地理信息技术(GIS)的应用越来越广泛,两者的结合更是为许多行业带来了前所未有的变革。本文将以“人工智能(AI)地理信息技术(GIS&#…

【C++】5.C语言/C++内存管理

一、C/C内存分布 栈中存储的是局部变量,函数参数,返回值等 堆主要用于动态内存分配 数据段用以存储全局数据和静态数据 代码段存储可执行代码和常量 二、C语言和C中的内存管理方式 在C语言中,我们使用 malloc、calloc、realloc、free来进…

理解与使用Linux设备树编译器(DTC)

这里写目录标题 设备树简介设备树编译器(DTC)安装DTC使用DTC实例:编辑设备树小结参考资料 Linux设备树编译器(DTC)是一个关键工具,用于处理嵌入式Linux系统中的设备树文件。本文将介绍设备树的概念、DTC的基…

深入理解 Srping IOC

什么是 Spring IOC? IOC 全称:Inversion of Control,翻译为中文就是控制反转,IOC 是一种设计思想,IOC 容器是 Spring 框架的核心,它通过控制和管理对象之间的依赖关系来实现依赖注入(Dependenc…

每日一题:托普利茨矩阵

给你一个 m x n 的矩阵 matrix 。如果这个矩阵是托普利茨矩阵,返回 true ;否则,返回 false 。 如果矩阵上每一条由左上到右下的对角线上的元素都相同,那么这个矩阵是 托普利茨矩阵 。 示例 1: 输入:matrix…

最新windows版本erlang26.0和rabbitmq3.13下载

Erlang下载 官网下载:https://www.erlang.org/patches/otp-26.0 百度网盘:https://pan.baidu.com/s/1xU4syn14Bh7QR-skjm_hOg 提取码:az1t RabbtitMQ下载 官网下载:https://www.rabbitmq.com/docs/install-windows 百度网盘…

【C++题解】1302. 是否适合晨练?

问题:1302. 是否适合晨练? 类型:分支 题目描述: 夏天到了,气温太高,小明的爷爷每天有晨练的习惯,但有时候温度不适合晨练;小明想编写一个程序,帮助爷爷判断温度是否适合…

同一工程中不同RS的问题结论

目录 MeshDevice/deviceAll && /wvp/device ​编辑 故意改成mesh下的RS,结果包裹了: sys2/redishealth ​编辑 ​编辑 原因解析 MeshDevice/deviceAll && /wvp/device 测试结果:都使用 import com.gbcom.wvp.domain.vo.RS; 返…

C语言编程题_3D接雨水

接雨水的题目描述如下。 (1) 2D接雨水: 字节员工是不是个个都会接雨水 ; (2) 3D接雨水: 407. 接雨水 II ; (3) 3D接雨水: 字节人都会的 3D接雨水 。 问题描述 难度:困难 给你一个 m x n 的矩阵&#xff…

【历史版本火狐浏览器下载】

历史版本火狐浏览器下载 介绍 火狐浏览器是一款开源的互联网浏览器,由Mozilla基金会开发。它的历史版本可以追溯到2002年,以下是一些重要的历史版本介绍: Firefox 1.0(2004年)- 这是火狐浏览器的第一个正式版本&…

安装多个MySQL版本时如何连接到不同的数据库

当安装多个版本的数据库时,不同版本的端口名不一样,可以使用以下命令进行连接 mysql -uroot -p数据库密码 -h主机名 -P端口号 数据库主机名默认是localhost,端口号默认是3306,当安装多个版本数据库时,需要记住数据库的…

vim+xxd 编辑16进制

1. vim -b mib 2. 在vim 中执行 %!xxd, 这样就可以输入16进制: 3. 输入完成后,在vim中 执行 %!xxd -r 切换至原模式; 4. 保存退出即可 5. 重新打开mib文件:vim -b mib 6. 在vim 中执行 %!xxd, 查看是否符合预期:…

java 语法中的数据类型

Java有哪些数据类型? Java语言数据类型分为两种:基本数据类型和引用数据类型。 Java基本数据类型范围和默认值: 需要注意一下,对于布尔类型: 如果 boolean 是单独使用(在编译之后使用 Java 虚拟机中的 int…

民航电子数据库:报错merge sql error, dbType null, druid-1.1.9, sql : xxx

目录 一、场景二、SQL三、报错信息四、排查五、原因六、解决 一、场景 1、对接民航电子数据库 2、limit查询时报错 二、SQL SELECT openid,headimgurl,nickname FROM t_mb_weixinuser WHERE openid? AND vdnId ? LIMIT 1三、报错信息 merge sql error, dbType null, dru…

一觉醒来 AI科技圈发生的大小事儿 04月24日

该日报由AI生成,制作方法联系 【微信:wenhaofree】 ⏩昆仑万维23年收入49亿净利润13亿,研发费用增长40%,坚定All in AGI与AIGC 昆仑万维发布2023年年度业绩报告,实现营业收入49.2亿元,净利润12.6亿元,同比…