接口测试中文件上传与下载

1. 上传文件

用fillder抓包

构造python代码

url = 'https://main.test.com/storage/1/storage?dir=abc'
file = {
    'file': open('/Users/zhangyang/PycharmProjects/untitled/image/yinzhang.png', 'rb')
}
header = {
    'token': token
}

ret = requests.post(url=url, files=file, headers=header, verify=False)
pprint(ret.json())

2. 下载文件

d_url ='http://a.test.com/app/abccc.apk'
ret = requests.get(d_url)
with open('abc.apk', 'wb') as f:
    f.write(ret.content)

 

3、用jmeter模拟文件的上传

multipart/form-data是Http协议规定的一种表单类型,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。既可以上传键值对,也可以上传文件。当上传的字段是文件时,会有Content-Type来表明文件类型

Content-Type: 互联网媒体类型;也叫做MIME类型,在Http协议消息头中,使用Content-Type来表示具体请求中的媒体类型信息,可以是:

image/gif :gif图片格式

application/pdf :pdf格式

application/msword:Word文档格式

application/octet-stream:二进制流


 

 

  • 文件名称是你文件所在的路径。
  • 参数名称,一般是file
  • MIME类型:application/octet-stream

上传图片

 

 

  • 图片名称是你图片所在的路径。
  • 参数名称,一般是file
  • MIME类型:application/octet-stream不行的话,试试multipart/form-data

 

文件下载#

 

文件下载,这里也是以下载图片和下载文件为例,但是需要说明的是,这里并没有没有将下载的内容保存到本地的操作。

 

下载文件

 

https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js

 

在线程组内,新建一个HTTP请求取样器,然后配置如下:

 

 

没有啥特殊的配置。

 

posted @ 2021-07-05 21:13  Hauce  阅读(338)  评论(0)    收藏  举报