性能测试JMeter应用篇---同线程组、跨线程组实现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();}