jmeter的全局变量与局部变量

各线程组之间的变量要互享,就要把变量(提取器取出来的)放在测试计划中,然后直接用时如此写:${测试计划中的变量名}。

目前先了解下beanshell的内置变量:vars,props,log。vars一般就是局部变量,同线程组间变量共享。

提取器之后,beanshell中的内容如下:

//局部变量转为全局变量
//设置全局变量方法一:用函数__setProperty设置
${__setProperty(globalPrameter,${localPrameter},)};
//设置全局变量方法二:用内置对象props设置
props.put("globalPrameter2","${localPrameter}");


//全局变量不能直接使用.如${globalPrameter},是错的,是取不到值的
//而要要用如下方式取。在脚本中使用时,用前两种方式取后放在测试计划的用户自定义参数中,然后再使用
log.info("获取全局变量的值,方法一:"+"${__property(globalPrameter,,)}");
log.info("获取全局变量的值,方法二:"+"${__P(globalPrameter,)}");
log.info("获取全局变量的值,方法三:"+props.get("globalPrameter"));

//获取全局变量的值
String globalPrameter2 = props.get("globalPrameter2");
//设置全局变量的值
props.put("globalPrameter2",globalPrameter2);
log.info("查看设置的全局变量:"+props.get("globalPrameter2"));

//获取局部变量的值
String localPrameter2 = vars.get("localPrameter");
//设置局部变量的值
vars.put("localPrameter2","zzzz");
log.info("查看设置的局部变量:"+localPrameter2);

提取器:

beanshell(代码内容见以上):

测试计划中设置变量。

数据流向为:请求响应数据--》提取器(实际为局部变量)--》转为全局变量---》测试计划中变量--》其它线程中使用:

其它线程组中使用:

 

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值