上次我们讲到了文件的上传,今天我们讲讲jmeter的文件下载接口。
怎么说呢,文件下载接口太简单了,跟平常的http接口就加了一个BeanShell 后置处理的工作。
首先,还是我们正常的接口:
然后再我们的接口下加上一个BeanShell 后置处理程序元件。
在BeanShell 后置处理程序内编写如下脚本。
脚本代码如下:
import java.io.*;
// 获取请求返回的数据,通过prev方法获取上个请求的返回
byte[] result = prev.getResponseData();
// 设置文件导出存放路径及保存的文件名
String file_name = "${file_dir}download/${appuuid}.xls";
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();
最后运行jmeter,查看是否下载成功。
因为下载文件响应都转成了流,所以在响应中是一堆乱码。
在我们的存放地址中,查看是否有下载的文件保存。如果有保存下来,并且文件大小跟手动下载的文件大小一致,就说明下载成功了。
是不是非常简单呢?