Jmeter中跨线程引用变量
在做接口测试的过程中,常常会遇到这个接口请求会用到另外一个接口请求返回的值,如token验证的问题
情景一:同线程
在接口请求中对返回值进行提取,在下个接口请求中直接引用变量
情景二:跨线程
在接口请求中对返回值进行提取,并设置为全局变量,接下来的接口请求中引用时,使用全局变量
1、登录接口,获取返回的token值,被设置为全局变量
查看登录接口返回的值,要提取部分为:tokenStr后的内容
{
"code" : 0,
"message" : null,
"obj" : "420182104102408192",
"tokenStr" : "NDIwMTgyMTA0MTAyNDA4MTkyX3Rva2VuXzE1ODk5MzcwMzM1NTEsLCwxNTg5OTM3MDMzNTUx"
}
在接口请求中添加后置处理器--正则表达式提取器 提取出tokenStr的值,设置变量名为token1(由于返回的值时jason,也可以用jason提取器)
在接口请求中添加后置处理器--BeanShell 后置处理程序 把提取出来的token1变量设置为全局变量${_ setProperty(token1, ${ token1})};
在其他线程组中引用token1的值时,直接用${__property(token1)}