如何使用Jmeter获取及引用token
Jmeter也是一款常用的接口测试工具,如果使用Jmeter,该如何获取Token,并在下一接口引用呢?
这里给大家介绍三种方法:
后置处理器-JSON Extractor
后置处理器-正则表达式提取器
后置处理器-Beanshell PostProcessor
使用场景:如:登录接口A返回Token,下一接口B必须要先传登录接口的Token才可以访问。
方式一:后置处理器-JSON Extractor
步骤1:在登录接口A中添加JSON Extractor
备注:可在获取Token的接口返回值中,输入Json表达式,验证能否获取到Token,如下图
步骤2:接下来,可以Beanshell后置处理器或Beanshell取样器,将获取到的Token设置为全局变量,供后面的接口调用。
步骤3:关联请求。在HTTP请求头管理器中引用Token参数:${变量名称}
方式二:后置处理器-正则表达式提取器
在登录接口A中添加正则表达式提取器
其他步骤和Json提取器一致。
它俩的区别在于:json提取器只能提取json格式的数据,正则可以匹配任意的格式。
方式三:后置处理器-Beanshell PostProcessor
在登录接口A中添加Beanshell PostProcessor,在Script中输入以下代码:
//先引入jar包 import org.json.JSONObject; //获取请求返回值。赋予字符串String 变量 String reponse = prev.getResponseDataAsString(); //将string的值转换成 jsonobject 对象 JSONObject json_user=new JSONObject(reponse); JSONObject obj_user = json_user.getJSONObject("data"); //获取json中token的值 String token=obj_user.getString("token"); //将获取到的token值赋予变量 vars.put("newtoken",token)
Beanshell PostProcessor可以跨线程引用提取到的参数。引用方式为:${__P(变量名称,)},如 ${__P(Token,)}
Token篇就介绍到这里,小伙伴们实际操作后印象才会更深刻,这篇文章《重磅福利!接口测试实战》中有项目可实操。
————————————————
版权声明:本文为CSDN博主「墨石测试攻略」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44901808/article/details/126698726