今天遇到一个场景,需要对一个支付接口进行压测,支付接口需要token才能请求成功,而压测是多线程把获取token接口和支付接口放在一个线程组,token也会获取很多次,而我只需要获取一次就好了,查阅一番后可以利用BeanShell后置处理器调用 __setProperty 函数将token存为整个测试计划的全局变量,在其他线程组中调用即可。
image.png先用json提取器获取到token,存为变量名oldtoken
image.png
${__setProperty(newtoken,${oldtoken},)};
newtoken 新的命名
${oldtoken} 引入获取的token
这时候就已经存为了全局变量,这下就可以引入到另一个线程组中
image.png
在参数行中也是一样的写法
image.png
${__property(newtoken,)} 这是固定写法,注意 __ 该符号键盘上可能会不能输入,我当时就被坑了
所以要去哪里可以在函数助手去找到该函数然后赋值出来,根据自己需要进行更改。
image.png
然后运行看看!!!!!!!!!!
image.png image.png
可以看到token成功传入到请求头中,flowId也成功传入请求body中。
网友评论