0


jmeter -获取cookie管理器中的cookie值用于压测接口

背景:
由于任务的原因,需要针对某个接口进行压测。但是压测这个接口时,需要获取用户的身份信息。如果先通过登录再进行压测的话,没有办法给出针对这个接口的压测数据。所以需要想办法直接将用户的身份信息(cookie+token)提前拿到,直接赋给压测的接口。
token可以通过登录接口获取,而cookie则是通过cookie管理器直接获取并赋予目标接口的,现在需要将cookie显性提取出来。
压测实现思路:
1、检查cookie和token文件是否有数据,有的话,执行线程组–【清除】
2、执行【登录】线程组,生成新的cookie和token文件
3、压测
在这里插入图片描述

1、用COOKIE Manager自动存储来提取cookie中的信息
1)找到jmeter安装目录中的Bin目录下jmeter.properties文件,修改CookieManager.save.cookies=true,将前面的#删除
在这里插入图片描述
2)重启jmeter
3)在jmeter中添加插件debug sample,直接脚本后,查看结果中cookie的值
在这里插入图片描述
2 处理cookie
1)通过使用 BeanShell 后置处理程序 将获取的cookie值保存到本地,供压测接口作为参数使用
在这里插入图片描述
//存储位置,可根据实际情况而定
FileWriter fs=new FileWriter(“F://xmfwzx//session.txt”,true);
BufferedWriter out =new BufferedWriter(fs);
//保存cookie值,用“,”作为分隔符。可根据情况做调增
out.write(vars.get(“COOKIE_G3_SESSION_V”)+“,”);
out.write(vars.get(“COOKIE_SZ_USER_SESSION_V”)+“,”);
out.write(vars.get(“COOKIE_SZ_USER_SESSION_V_CHECK”)+“,”);
out.write(System.getProperty(“line.separator”));
out.close();
fs.close();
2)cookie存储位置
在这里插入图片描述
3)更新cookie和token
由于每次压测前需要保证每次的cookie和token都是可用的,所以需要更新cookie和token值
这里的实现方式是,先删除已有的cookie和token,再创建新的cookie和token。
在这里插入图片描述
//删除token文件
String filename = “F://xmfwzx//token.txt”;
File file = new File(filename);
if(file.exists()){
file.delete();
FileWriter fs=new FileWriter(“F://xmfwzx//token.txt”,true);
BufferedWriter out =new BufferedWriter(fs);
}
else{
FileWriter fs=new FileWriter(“F://xmfwzx//token.txt”,true);
BufferedWriter out =new BufferedWriter(fs);
}
//删除session文件
String filename = “F://xmfwzx//session.txt”;
File file = new File(filename);
if(file.exists()){
file.delete();
FileWriter fs=new FileWriter(“F://xmfwzx//session.txt”,true);
BufferedWriter out =new BufferedWriter(fs);
}
else{
FileWriter fs=new FileWriter(“F://xmfwzx//session.txt”,true);
BufferedWriter out =new BufferedWriter(fs);
}
3、cookie的使用
在这里插入图片描述
在这里插入图片描述

标签: 测试工具

本文转载自: https://blog.csdn.net/Z_Y_Q/article/details/125369157
版权归原作者 Z_Y_Q 所有, 如有侵权,请联系我们删除。

“jmeter -获取cookie管理器中的cookie值用于压测接口”的评论:

还没有评论