首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将属性或线程组变量传递给sample_variables=<variable_name>

如何将属性或线程组变量传递给sample_variables=<variable_name>
EN

Stack Overflow用户
提问于 2021-06-03 14:42:40
回答 1查看 470关注 0票数 0

我希望通过使用属性sample_variables=,将线程组1中的变量作为自定义字段添加到由线程组2报告的行的jtl文件中。尝试从线程组1中创建局部变量的属性,但是sample_variables似乎没有打印属性。

无论如何,我可以为线程组2中的每个执行记录一个来自线程组1的变量吗?

代码语言:javascript
代码运行次数:0
运行
复制
Test Plan (initiated w property sample_variables=var1)
--> Thread Group 1
----> JDBC request setting var1   # this prints var1 nicely to the jtl file
--> Thread Group 2
---> Another JDBC request   # this prints "null" to jtl (as var1 is local to TG1)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-03 15:17:10

  1. 使用样本变量属性时,指示JMeter将定义的变量(S)值保存到.jtl结果文件中的额外列中。
  2. 根据JMeter文档的说法: 属性与变量不相同。变量是线程的本地变量;属性对于所有线程都是通用的,需要使用__P或__property函数进行引用。

如果只想将单个值从线程组1复制到线程组2,则需要:

  • JSR223取样器添加到线程组1的末尾
  • 将以下代码放入"Script“区域: prev.setIgnore() //不要将此JSR223采样器保存在侦听器或.jtl结果文件props.put(' var1 ',vars.get('var1')) //将var1变量转换为JMeter属性中
  • 将JSR223采样器添加到线程组2的开头
  • 将以下代码放入"Script“区域: prev.setIgnore() vars.put(' var1 ',props.get('var1')) //将var1属性转换为JMeter变量

在上面的代码中,propsjava.util.Properties的一个实例,varsJMeterVariables的实例,请参阅在Groovy中应该使用的前8个JMeter Java类以获得更多有关此代码和用于JSR223测试元素的JMeter API缩写的信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67823585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档