栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Jmeter提取接口返回数据并存储为文件

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Jmeter提取接口返回数据并存储为文件

场景

需要对单个接口执行压测,请求该接口需带上token值,且每次发起请求的token值不同。token值是由登录接口返回

解决方法

先使用参数化方式执行登录接口,使用JSON提取器获取token值,使用beanshell将值存储至文件

执行

登录接口返回的数据形式如下:

{"code":1,"msg":"请求成功","data":{"phone":"13055555555","token":"eyJhdWQiOiIxMzV4cCIaNjk3LCJ1c2VySWQiOiIxMzA0MzISJ9"}}

添加JSON提取器

分别填入变量名与提取路径
提取多个值,可用;进行分隔

phone;getToken
$.data.phone;$.data.token


添加BeanShell处理器


脚本代码:

FileWriter fstream = new FileWriter("D:\work\test.txt",true);
BufferedWriter out = new BufferedWriter(fstream);
out.write(vars.get("phone")+",");
out.write(vars.get("getToken")+"n");
out.close();
fstream.close();

执行后可成功在对应位置找到test.txt文件,里面存储手机号与对应的token值

遇到的问题

最初写脚本时文件路径写为D:worktest.txt
执行后报错信息显示如下:

 ERROR o.a.j.u.BeanShellInterpreter: Error invoking bsh method: eval	Sourced file: inline evaluation of: ``FileWriter fstream = new FileWriter("D:worktest.txt",true); BufferedWriter out . . . '' Token Parsing Error: Lexical error at line 1, column 41.  Encountered: "w" (119), after : ""D:\"

将文件路径改写为D:\work\test.txt 或 D:/work/test.txt 后可正确执行并输出文件
具体原因可查询java中文件路径写法
在java中反斜杠“”需要进行转义,写成“”才能被识别

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/862858.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号