1.下载文件到本地
注意:文件路径需使用//符号
在请求下增加“取样器-beanshell后置处理器”,代码如下:
import java.io.*;
byte[] result = prev.getResponseData(); //获取请求返回的数据,prev是获取上个请求的返回
String file_name = "D://autotest//jmeterscript//download//信息修改模板.xlsx"; //代表存放文件的位置和文件名
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();
2.下载文件到本地,并加上日期
2.1.第一种方法:使用时间参数
常用的时间格式如下:
${__time(,)} 例如返回 1646209943514
${__time(yyyy/MM/dd,)} 例如返回 2022/03/02
${__time(dd/MM/yyyy,)} 例如返回 02/03/2022
${__time(YMD,)} 例如返回 20220302
${__time(HMS,)} 例如返回 163556
${__time(YMDHMS,)} 例如返回 20220302-163619
${__time(yyyy-MM-dd HH:mm:ss,)} 例如返回 2022-03-02 20:54:06
在请求下增加“取样器-beanshell后置处理器”,在下载文件名称增加参数化${__time(YMDHMS,)} ,代码如下:
import java.io.*;
byte[] result = prev.getResponseData(); //获取请求返回的数据,prev是获取上个请求的返回
String file_name = "D://autotest//jmeterscript//download//信息修改模板${__time(YMDHMS,)}.xlsx"; //代表存放文件的位置和文件名
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();
下载后,文件名称如下:

image.png
2.2.第二种方法:beanshell编写函数
1.在线程组增加“前置处理器-beanshell预处理程序”,代码如下:
以下代码分别获取当前日期、时间等
import java.util.*;
import java.text.SimpleDateFormat;
String str1 = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date());
String str2 = (new SimpleDateFormat("hh:mm:ss.SSS")).format(new Date());
String str3 = (new SimpleDateFormat("hh:mm:ss")).format(new Date());
vars.put("date",str1);
下方使用的参数是以下代码的Date
import java.text.*;
import java.util.Date;
Date currentTime = new Date();
SimpleDateFormat formatter1 = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat formatter2 = new SimpleDateFormat("HHmmss");
String dateString1 = formatter1.format(currentTime);
String dateString2 = formatter2.format(currentTime);
String dateString = dateString1+dateString2;
vars.put("Date",dateString);
2.在线程组下增加“取样器-调试取样器”,设置如下:

image.png
3.在下载文件名称增加参数化${date} ,代码如下:
import java.io.*;
byte[] result = prev.getResponseData(); //获取请求返回的数据,prev是获取上个请求的返回
String file_name = "D://autotest//jmeterscript//download//信息修改模板${Date} .xlsx"; //代表存放文件的位置和文件名
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();
4.下载文件的效果如下:

image.png