news 2026/4/10 4:54:24

线程组之间的JMeter传递变量

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
线程组之间的JMeter传递变量

下面,我们将看看如何在线程组之间共享和传递变量。

在开发高级JMeter脚本时,很可能您将拥有多个线程组。每个线程组将执行不同的请求。

一个很好的例子是我们需要使用Bearer Tokens对用户进行身份验证。一个线程组执行身份验证并保存令牌。另一个线程组需要访问此令牌并在另一个请求中使用它。

因此,我们需要一种在线程组之间传递变量的机制。

在JMeter中传递线程组之间的变量

对于此示例,我们的测试计划将具有两个线程组。第一个线程组向Web服务发出GET请求。然后,我们使用JSON Extractor插件来解析JSON响应。

使用JSONPath,我们提取特定键的值并将其保存为JMeter变量。

这就是我们的JMeter请求的样子:

上述请求的结果以JSON格式生成以下响应:

和我们的JSONPath提取第一个url看起来像:

JSONPath查询的值保存为first_url。此变量只能在同一个线程组中访问,我们可以通过使用获取其值${first_url}。现在,我们如何通过其他线程组访问此变量?

答案是用于BeanShell Assertion将变量保存为全局属性。通过这种方式,我们可以在线程组之间传递变量。

要添加BeanShell断言,请右键单击Test Plan> Add> Assertion> BeanShell Assertion

在我们的BeanShell断言中,我们可以输入以下代码

${__setProperty(first_url, ${first_url})};

现在在线程组2中,我们可以使用${__property(first_url)} 如下所示直接访问此变量:

或者,我们可以使用BeanShell PreProcessor来操作变量:

在BeanShell PreProcessor中,我们可以通过使用来访问从另一个Thread组传入的变量props.get("name_of_variable") 。然后我们可以执行一些String操作并将结果保存为新变量。

在上面的例子中,我们http:// 从Thread Group 1传递的变量中删除了,我们将结果保存为变量host。

该变量host 现在是线程组2的本地变量,并使用${host} 如下所示直接访问它:

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/2 17:02:17

五年干货免费送?我为什么把知识库交给PandaWiki

Panda不是猫 引言 从熊猫开始撰写 NAS 相关内容至今,已有五年时间。这五年间,累计撰写字数已突破四百万,其中长文教程更是多达 近 600 篇 。虽然熊猫的内容一直在各大自媒体平台分发,但这些平台更多是作为一个“扩圈”的渠道&…

作者头像 李华
网站建设 2026/4/9 0:28:32

C语言枚举(enum)详解:从基础语法到算法实战

摘要:本文深入讲解C语言中的enum(枚举)类型,涵盖其定义、使用、内存布局、优势与局限,并通过多个经典算法问题(状态机、方向控制、棋盘游戏等)展示如何用枚举提升代码可读性、可维护性和健壮性。…

作者头像 李华
网站建设 2026/4/7 21:08:37

嵌入式固件升级框架详解与实战经验

嵌入式固件升级(Firmware Update)是什么?固件升级是指在设备不拆解、不更换芯片的前提下,为了修复Bug、增加新功能或提升性能,通过软件方式更新嵌入式系统固件。对嵌入式产品而言,固件升级机制可以保持产品…

作者头像 李华
网站建设 2026/4/9 9:33:45

EmotiVoice API鉴权机制实现:保障调用安全

EmotiVoice API鉴权机制实现:保障调用安全 在AI语音技术迅速普及的今天,语音合成已不再是简单的“文字转语音”,而是迈向情感化、个性化和场景化的智能交互核心。EmotiVoice作为一款支持多情感表达与零样本声音克隆的开源TTS引擎,…

作者头像 李华
网站建设 2026/4/8 12:04:45

最小二乘问题详解3:线性最小二乘实例

案例总是举拟合直线的例子实在太简单了,这里就使用一个更加复杂一点问题模型:双线性变换。具体来说,假设存在两幅地图需要配置,并且找到了各自地图上的同名点,可以使用双线性变换模型来进行快速、初步的校正。也就是说…

作者头像 李华
网站建设 2026/4/9 11:16:27

生产透明化如何实现?双翌MES软件构建全链路数字车间

在当今制造业的激烈竞争中,单纯的设备自动化已不再是制胜关键。真正的核心竞争力,日益体现为企业能否将生产现场海量、分散的数据转化为精准的洞察与敏捷的行动。许多企业正面临这样的困境,高端智能设备林立,但信息却如同孤岛&…

作者头像 李华