接口自动化测试 —— 文件上传/下载

本文介绍了文件上传和下载接口的区别及实现方法。文件上传使用POST请求,Content-Type为multipart/form-data,通过构造文件数据和额外参数发送。文件下载通常为GET请求,接收到二进制响应内容后保存到本地。示例代码展示了如何使用requests模块进行操作。

阅读本文大概需要4分钟。

我们在做接口自动化测试的时候,经常会碰到文件上传接口文件下载接口

那么,文件接口跟普通接口有什么区别呢?又该如何实现呢?

〇、前言

文件上传/下载接口普通接口类似,但是有细微的区别。

如果需要发送文件到服务器,例如:上传文档、图片、视频等,就需要发送二进制数据,上传文件一般使用的都是 Content-Type: multipart/form-data 数据类型,可以发送文件,也可以发送相关的消息体数据。

反之,文件下载就是将二进制格式的响应内容存储到本地,并根据需要下载的文件格式来写文件名,例如:F:/caituotuo-file.pdf。

一、文件上传接口

1. 接口文档

Request URL:/createfile

Request Method:POST

Content-Type:multipart/form-data

名称 类型 是否必须 描述
file File 文件
title String 文件名称
fileType String 文件类型:doc, docx, txt, pdf, png, gif, jpg, jpeg, tiff, html, rtf, xls, txt

2. 代码实现

(1)实现步骤:

  1. 构造文件数据,通过open()函数以二进制方式打开文件

    文件上传接口参数与普通post请求一样,需要写成Key和Value模式,Key为参数名称file(也是组件的name属性),Value为一个元组(与普通接口不同的地方)

    "file": (
        "caituotuo-file.pdf", # 元组第一个值为文件名称,没有则取None
        open(r"F:\caituotuo-file.pdf", "rb"), # 若第一
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值