JMeter,将响应结果保存至csv文件,并读取csv文件

        在做性能测试的时候,需要模拟多个不同的用户同时进行操作,此时可以将响应数据中的某些字段(比如token字段)提取出来,以供下一接口作为入参。

一、将响应结果中的字段提取,并保存至CSV文件【分为2个步骤

1) 将响应结果中的字段提取 

json提取:https://blog.csdn.net/Moonlight_16/article/details/119797715

正则提取:https://blog.csdn.net/Moonlight_16/article/details/122253904

 

2) 将提取出来的字段保存至csv文件中【需本地文件夹中先新建该文件,token.csv】

后置处理器:  BeanShell PostProcessor,具体代码见下:

//导入json包
import org.json.JSONObject;


//写入文件
//本地存储文件路径
FileWriter fs=new FileWriter("D://study//jmeter//token.csv",true); 
BufferedWriter out=new BufferedWriter(fs);

//提取出来的token,并通过,换列
out.write(vars.get("token")+",");
//换行
out.write(System.getProperty("line.separator"));

//关闭文件
out.close();
fs.close();

 3) 添加线程数,执行请求,运行jmeter

手机号随机函数:137${__Random(17090000,17099999,)}

  4) 运行结束后,查看csv文件

二、读取CSV文件

1)添加->配置文件->csv 数据文件设置

2)设置对应字段:

        文件名:

                如果csv文件放在jmeter的bin目录下,可以只写文件名即可(建议:脚本和csv文件都放在Jmeter的bin目录下,避免分布式执行时踩坑);

                如果csv文件在别的地方,则需要填写完整的路径:D:/soft/jmeter/token.csv

        文件编码:UTF-8

        变量名称:token---相当于表格中的“列名”

        忽略首行:true

         分隔符:默认是逗号,可改

备注:

1、JMeter运行时报Typed variable declaration : Class: JSONObject not found in namespace解决方案

因为${JMETER}\lib\下缺少json.jar包,下载链接如:

https://pan.baidu.com/s/1KFDUIq40BhUXcy2NYo7YkA 密码: c91m

猜你喜欢

转载自blog.csdn.net/Moonlight_16/article/details/127871231