Jmeter实现接口之间传递token方法汇总

场景一:同一线程组里接口使用同一token
方法一:使用正则表达式提取器

1、在线程组中添加“获取token”请求

2、添加正则表达式提取器

正则表达式:“token”:"(.*?)"

 

 

 

 

 

 3、其他接口引用变量

引用变量方式:${token}

 

 

 方法二:使用后置处理器—Json Extractor

1、在线程组中添加“获取token”请求
参考方法一

 

 

 

 2、在线程组中添加后置处理器:Json Extractor

使用Json表达式:$.data.token获取到变量赋值给变量"token"

 

 

 3、其他接口引用变量

引用变量方式:${token}

 

场景二:不同线程组中传递token
方法一:使用后置处理器-Bean Shell PostProcessor

Jmeter线程组之间是相互独立的,各线程组之间互不影响,想要在不同线程组中使用同一token,方法是将token设置为全局变量。
Jmeter的内置函数中:“__setProperty”函数可以把某参数的值设置成Jmeter的内置属性,也就是全局变量,各个线程组之间调用时,使用Jmeter属性的函数“__p”来调用相应的属性即可。

1、添加“获取token”请求

2、添加后置处理器—正则表达式提取器

3、添加后置处理器—Bean Shell PostProcessor

 

 

 

 

 

 (1)Parametres:把需要操作的参数传递给Bean Shell PostProcessor,将正则表达式提取器中提取出来的oken的值写入。

(2)Script:

 

 

把接收到的参数值赋值给定义的参数,0代表第一个值。

 

 调用函数__setProperty,将参数token赋值给requestToken,并设置requestToken为Jmeter的内置属性。

代码:

string token=bsh.args[0];
${__setProperty(requestToken,${token},)};


3、其他接口引用变量

引用变量方式:${__P(requesttoken,)}
————————————————————————————————————————————————
原文链接:https://blog.csdn.net/weixin_44249185/article/details/100098554

posted @ 2021-12-20 17:47  傲娇小曼主  阅读(3331)  评论(0编辑  收藏  举报