目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
如果需要发送文件到服务器,比如上传图片、视频等,就需要发送二进制数据。
一般上传文件使用的都是 Content-Type: multipart/form-data; 数据类型,可以发送文件,也可以发送相关的消息体数据。
文件上传操作步骤
POST一个多部分编码(Multipart-Encoded)的文件:
使用 requests 上传文件的基本步骤
构造文件数据,通过 open 函数以二进制方式打开文件
构造相关数据
发送请求,将文件数据以 files 参数传入,其他消息体数据通过 data 、json 、 headers 、 cookies 传入
url = 'http://httpbin.org/post' # 上传文件接口
files = {
'file': ('test.png', # 文件名称
open('../file/test.png', 'rb'), # 文件路径
'image/png', # 文件类型
{'Expires': '0'} # 其他参数,非必传
)
} # => 打开上传文件并且加入文件相关参数
data = {
"name": "test"
}
# data传入请求参数dict,files传入待上传文件参数dict
r = requests.post(url, data=data, files=files)
print(r.json())
注意:files字典里的 ‘file’ 键是根据上传组件的name属性来改变的,不一定是file;
如下图上传组件,当你上传一张图片时,抓包可以发现会传两个值,一个是fileField,一个是type,所以你的文件数据dict要包含 fileField 和 type 两个key
files = {
'fileField': (
'test.png', # 文件名称
open('../file/test.png', 'rb'), # 文件路径
'image/png', # 文件类型
{'Expires': '0'} # 其他参数,非必传
),
'type': 1
} # => 打开上传文件并且加入文件相关参数
文件下载操作步骤
极其简单,将二进制格式的响应内容存进本地文件中,根据需要下载的文件的格式来写文件名即可
down_url = 'https://www.imooc.com/mobile/appdown'
res = requests.post(down_url).content
with open("F:/imooc.apk", "wb") as f:
f.write(res)
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
只有拼尽全力,才能让梦想破茧成蝶;只有奋斗不息,才能走出人生的精彩篇章;只有坚持不懈,才能绽放出人生的华丽花朵;相信自己,不放弃,你就是那个创造奇迹的人!
只有拼搏不息,才能赢得辉煌;只有奋斗不止,才能实现梦想;只要坚持不懈,成功必将属于你。相信自己,努力前行,未来的辉煌属于勇敢追梦的人!
只有拼尽全力,才能在茫茫人海中独领风骚。不畏困难,不惧失败,奋斗的路上每一步都是向前的力量,一往无前,终将登上成功的巅峰。相信自己,努力奋斗,未来必定会闪耀光芒!