当前位置 : 主页 > 网络安全 > 测试自动化 >

性能测试JMeter应用篇---同线程组、跨线程组实现token共用

来源:互联网 收集:自由互联 发布时间:2021-06-22
方式一:将token值取出,设为全局变量,同线程组内可共用token值 1.登录请求如下: 2.从登录请求返回json字符串中提取token值,保存为变量token_0: 3.将token设置为全局变量,保存为token

方式一:将token值取出,设为全局变量,同线程组内可共用token值

  1.登录请求如下:

  

   2.从登录请求返回json字符串中提取token值,保存为变量token_0:

  

   3.将token设置为全局变量,保存为 token_1:

  

   4. 其他线程调用token:

  

 方式二:将token值取出,设为全局变量后,跨线程组共用token值

  1.在方式一的基础上,增加测试计划下变量:

  

   2.跨线程组调用token:

  

方式三:线程组A取出token后,写入csv中,其他线程组从csv文件中调用token值

  1.在方式一基础增加JSR223后置处理器:

  

    此方式可批量存储token值,用于其他线程组。

  附录JSR223后置处理器脚本:   

FileOutputStream fps = new FileOutputStream("F:/jmeter_workspace/wsf/token.csv",true);
OutputStreamWriter osw = new OutputStreamWriter(fps);
BufferedWriter bw = new BufferedWriter(osw);

//Long myNum=vars.get("token");
//下面不能直接使用token,  用vars.get("token")保证每次取到的都是最新值。

bw.append(vars.get("token_0"));
bw.append(‘\n‘);

if(bw!=null){bw.close();}
if(osw!=null){osw.close();}
if(fps!=null){fps.close();}
网友评论