前言:
测试中我们会经常遇到要提取响应体返回值的问题,比如提取登陆时返回的token,提取新建任务时产生的唯一标志id,提取新建用户是生成的唯一id,等等之类的问题。这些返回值都在响应体中,大多以json的形式存在。
今天我们就学习使用jmeter的正则表达式提取器来想要的值
1、认识正则表达式提取器
2、提取语法讲解
如上图的正则表达式:"token":"(.+?)"},
其中"token"代表响应体中要提取的变量名,"(.+?)" 表示要提取的值,},表示结束符
实例:
{
"code":0,
"data":
{
"role":"administrator",
"roleId":1,
"userName":"管理员",
"userId":"1",
"token":"0c0fea8fd808b9747ba168b005ea0971"
},
"status":0
}
要提取token,正则表达式为 "token":"(.+?)"},
要提取userId,正则表达式为 "userId":"(.+?)",
注意:结束符那里要注意哪一个字符是标志着提取结束。
3、BeanShell 后置处理程序,存储提取的值
例如:将提取的token值存储起来,使用BeanShell 后置处理程序。如下
语法:
FileWriter fs= new FileWriter("F:\\106jmeter work space\\tokenlist.txt",true);
BufferedWriter out =new BufferedWriter(fs);
out.write(vars.get("tokenlist")+"\n");
out.close();
fs.close();
第一行会去新建一个名为tokenlist.txt,tokenlist为引用名称,也是用来传递的变量。这样就能把值存起来了
喜欢记得点赞