在实际开发中很多接口是存在依赖关系,本次处理的是通过接口A返回的数据中提取数据做为第二个接口的url。步骤如下图:
1.第一个接口:
请求响应:
({"download_url": "https://dl.aftershotpro.com/download?key=630D48B335B22B517F4868AD18BB91E18B563F8E4AA82C1CC5F26206821C470FF40A03C18B1A7BA9", "stub_trk_param":"x-at=asp3-xx-seo&x-channel=seo" });
请求download_url 实现下载
2.配置请求头:
3.配置正则提取器获取域名:右键请求--添加--后置处理器--正则表达式提取器
4.配置正则提取器获取路径以及入参:
5.配置一个新的http请求作为第二个请求:
6.配置下载的后置处理程序:右键请求--添加--后置处理器--BeanShell 后置处理程序
import java.io.*; byte[] result = prev.getResponseData(); //这个是获取到请求返回的数据,prev是获取上个请求的返回 //单个下载 //String file_name = "D:\\apache-jmeter-5.1.1\\data\\7891.xls"; //批量下载 String file_name = "D:\\tool\\360tst\\"+System.currentTimeMillis()+".exe"; //代表存放文件的位置和文件名,将每次下载的文件都重命名,后缀为xlsx(防止相同文件被覆盖) File file = new File(file_name); FileOutputStream out = new FileOutputStream(file); out.write(result); out.close();
7.在线程组下配置聚合报告,实现新能监测