beanshell PreProcessor存储数据
import java.text.*;
Date date = new Date();
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd");
File file = new File("C:/Users/Desktop/27/result/"+ft.format(date)+".csv");
FileWriter fileWriter = new FileWriter(file,true);
BufferedWriter bufferWriter = new BufferedWriter(fileWriter);
String jj = sampler.getName(); // 获取结果树中打印的名称
log.info("===================="+jj);
bufferWriter.write(jj+',');
bufferWriter.close();
fileWriter.close();
beanshell PostProcessor存储数据
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.JSON;
import java.text.*;
Date date = new Date();
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd");
File file = new File("C:/Users/Desktop/27/result/"+ft.format(date)+".csv"); // 以日期形式命名存储文件
JSONObject jsonObj=new JSONObject();
FileWriter fileWriter = new FileWriter(file,true);
BufferedWriter bufferWriter = new BufferedWriter(fileWriter);
try{
String jsonString = prev.getResponseDataAsString();
log.info("-------------------------"+jsonString);
jsonObj = JSON.parseObject(JSON.parseObject(jsonString).getString("one"));
bufferWriter.write(jsonObj.getString("two")+','+jsonObj.getString("three"));
bufferWriter.write(System.getProperty("line.separator")); //换行
}catch(Exception e){
// 读取jdbc请求中Variable names的值,不是Result variable names的值,
网上大多写的都是Result variable names的
String text=vars.get("text_1");
bufferWriter.write(text);
bufferWriter.write(System.getProperty("line.separator"));
}
bufferWriter.close();
fileWriter.close();
说明:
1.sampler.getName(),获取的是http request中Name的值,如下图红框圈住的部分
2.vars.get(“text_1”),获取的是variable names除列名外的第一个值,如果想要列名就写作“text_0”,想要该列除列名外第二行的值写作“text_2”,如下图红框部分
3.System.getProperty(“line.separator”),是在写入该行的末尾进行了换行,可以自己试下这个。。