一、文件上传与下载概述
1、概述
文件上传就是将本地的文件上传到服务器上这个过程,文件下载就是讲服务器上的文件下载到本地这个过程。
2、文件上传实现思想
- 抓包获取请求的上传文件相关信息
- 搭建测试框架
- 在JmeterHTTP请求的上传文件中设置路径、名称和MIME类型
- 设置请求头信息(token鉴权),切记不需要Content-Type
- 添加结果树,运行测试,查看结果
3、文件下载实现思想
- 搭建测试框架,设置HTTP请求相关信息
- 添加BeanShell取样器,编写将文件保存到本地代码,注意路径转义
- 添加结果树,运行测试,查看结果
二、Jmeter实现文件上传的步骤
1、接口文档信息不全时,使用浏览器进行抓包,如下图所示:
2、搭建测试框架(线程组、HTTP请求、结果树、请求默认值),在HTTP请求中设置请求方式、请求路径和文件上传页签,如下图所示:
3、添加HTTP管理信息头,设置请求头信息,注意不需要Content-Type这个请求头,否则会请求失败,如下图所示:
4、运行测试,查看结果树,如下图所示:
三、Jmeter实现文件下载的步骤
1、搭建测试框架(线程组、HTTP请求、结果树、请求默认值),在HTTP请求中设置请求方式和请求路径,请求的token可以放在参数中,也可以直接放在请求路径中,如下图所示
2、线程组右键-----添加Bean Shell 取样器,由于jmeter没有实现将文件保存到本地的功能,所以需要自己写beanshell来实现把文件保存到本地,其代码如下:
import java.io.*; byte[] result = prev.getResponseData(); //这个是获取到请求返回的数据,prev是获取上个请求的返回 String file_name = "D:\个人数据\Desktop\test\1.xlsx"; //代表存放文件的位置和文件名 File file = new File(file_name); FileOutputStream out = new FileOutputStream(file); out.write(result); out.close();
3、运行测试,查看结果树和下载的文件,如下图所示: