一、单个下载配置方法
1、先添加线程组
选中测试计划右键添加线程组:测试计划->添加->线程(用户)->线程组
2、添加HTTP请求
①. 选中线程组右键添加HTTP请求:线程组->添加->取样器->HTTP请求
②.配置HPPT请求
3、添加BeanShell 取样器(BeanShell Sampler)
①.选中线程组右键添加BeanShell 取样器:线程组->添加->取样器->BeanShell 取样器
②.配置BeanShell 取样器
import java.io.*;
byte[] result = prev.getResponseData(); //这个是获取到请求返回的数据,prev是获取上个请求的返回
String file_name = "C:\\Users\\Admin\\Desktop\\download\\123.mp4"; //代表存放文件的位置和文件名
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();
4、运行
二、批量下载同一个文件
1、配置线程组(压力测试,1秒内请求10次接口)
2、配置BeanShell 取样器
import java.io.*;
byte[] result = prev.getResponseData(); //这个是获取到请求返回的数据,prev是获取上个请求的返回
String file_name = "C:\\Users\\Admin\\Desktop\\download\\"+System.currentTimeMillis()+".mp4"; //代表存放文件的位置和文件名,将每次下载的文件都重命名,后缀为mp4(防止相同文件被覆盖)
File file = new File(file_name);
FileOutputStream out = new FileOutputStream(file);
out.write(result);
out.close();
3、运行
注意事项:
1、批量下载时,不要使用监听器,监听器会占用大量内存,会出现内存溢出问题。(如关闭监听器还是出现内存溢出问题,那就需要修改jmeter配置文件,修改方法自行百度)