首页 > 其他分享 >接口测试之文件上传

接口测试之文件上传

时间:2023-08-04 16:00:10浏览次数:30  
标签:文件 接口 参数 测试 编写 上传

  在日常工作中,经常有上传文件功能的测试场景,因此,本文介绍两种主流编写上传文件接口测试脚本的方法。

  首先,要知道文件上传的一般原理:客户端根据文件路径读取文件内容,将文件内容转换成二进制文件流的格式传输给服务端,而服务端接受客户端传过来的二进制文件流以及文件名称等信息(此时这些二进制文件流存储在内存中),然后将其写入存储空间(即磁盘中),完成上传操作,返回给客户端信息。

  ok,知道原理后,开始操作。

  本文将根据示例接口,编写文件上传接口脚本(示例接口demo采用python+django编写,后面会讲如何实现),接口信息如下:

  

接口信息:127.0.0.1:8001/case/upload_file
请求方式:post
参数名称:myfile
参数类型:file

方法1:postman编写测试脚本

  a.将接口信息填入请求中,请求参数类型勾选File

  b.点击【select Files】,调用系统文件弹窗选择文件,将文件信息赋值给接口中myfile参数

  c.选择文件参数后,点击【send】按钮发送请求。

  至此,请求发送完毕,查看postman接收到接口返回上传完成信息,上传文件成功出现在目录中(如下图)。

方法2:使用python+requests编写脚本文件

  原理同postman,文件参数要使用File,而非一般接口的body参数(当然,接口其他参数仍然要以body传输)   

       注意:要传入文件所在路径

import requests

url = "http://127.0.0.1:8001/case/upload_file"
payload = {}
files = [
    ('myfile', ('测试1.mp4', open('C:\\Users\EEO\Videos\Captures\测试1.mp4', 'rb'), 'application/octet-stream'))
]
headers = {}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)

 

   如图所示,文件已成功上传至服务器。

 

标签:文件,接口,参数,测试,编写,上传
From: https://www.cnblogs.com/qinian1/p/upload.html

相关文章

  • 加热灯小太阳灯上架亚马逊美国站UL482测试报告办理
    加热灯小太阳灯是一种非常实用的家居用品,可以在寒冷的冬天为人们提供温暖舒适的环境。如今,随着电子商务的发展,许多中国企业希望能够将自己的产品推向国际市场,其中亚马逊美国站无疑是最受欢迎的销售平台之一。下面我们来看看如何办理将加热灯小太阳灯上架亚马逊美国站的UL482测试报......
  • 国标GB28181视频平台LntonGBS(源码版)国标平台正确调阅实时录像接口的具体操作步骤
    LntonGBS之所以成为安防市场的主流视频平台,主要得益于其架构优势。首先,LntonGBS采用了云边端一体化的架构,将云计算、边缘计算和终端设备有机结合,实现了数据的高效传输和处理。这种架构不仅能够满足大规模视频数据的存储和分析需求,还能够实现实时监控和快速响应,提高了安防系统的整体......
  • 个人微信开发API接口
    个人微信开发API接口可拓展功能说明1、个人微信多账号管理、聚合聊天、多个微信号同时登陆、多个微信号集中在一个窗口进行聊天,实现一人多号同时沟通快速提升沟通效率,提升微信营销效率。2、客服灵活分配:客服主管可自由分配微信号给指定客服,方便及时处理问题,也可随时转接给公司商务......
  • 案例7-Unittest测试框架定制
    需求描述假设由你们公司的已有一套前辈开发的基于unittest的测试框架,现在交由你进行维护。领导另外提出了一些新的需求,比如:为用例增加优先级功能bvt及p0-p2,并支持按优先级筛选用例。为用例添加状态功能,包括实现中、完成、废弃等,默认只运行完成的用例为用例添加负责人,并在......
  • Mitsubishi 三菱FX3U的232通信板,与PC串口调试助手通信测试
    在某个项目中,需要用到上位机来控制PLC中的气缸,采用的通信方式是无协议通信,硬件使用FX3U的PLC以及一块FX3U-232C-BD扩展板。具体测试如下所示。01使用硬件 如图所示: 02测试软件03具体步骤1、编写PLC控制程序,如图所示:程序解释:D8120是通信格式设置地址,设置成H0C81(二进制......
  • 一键获取测试脚本,轻松验证 TDengine 3.0 IoT 场景下 TSBS 测试报告
    不久前,基于TSBS,我们发布了TDengine3.0测试报告系列第一期——《DevOps场景下TDengine3.0对比测试报告》,报告验证了TDengine基于时序数据场景所设计的独特架构,在DevOps场景下带来的性能优势以及成本控制水平。本期我们继续探寻在IoT场景下,TDengine对比TimescaleDB、......
  • c#实现文件夹的上传和下载
    ​ IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续......
  • 文件上传
                 ......
  • 7DGroup 性能/测试开发/运维 系列文章更新(2021/8)
    组织织简介1、7DGroup简介性能能闲谈1、浅谈window桌面GUI技术及图像渲染性能测试实践2、杂谈:性能测试的范围到底有多大?3、戏说CPU使用率-驳《CPU使用率度量指标是扯淡!》译文标题4、对性能测试评估分析优化市场的反思5、泛谈系统级跟踪和应用级跟踪6、性能测试分析优化该有的范围7......
  • 7DGroup 性能/测试开发/运维 系列文章更新(2021/10)
    组织织简介1、7DGroup简介2、【付费征文】7DGroup长期征集原创文章性能能闲谈1、浅谈window桌面GUI技术及图像渲染性能测试实践2、杂谈:性能测试的范围到底有多大?3、戏说CPU使用率-驳《CPU使用率度量指标是扯淡!》译文标题4、对性能测试评估分析优化市场的反思5、泛谈系统级跟踪和应......