• 接口测试之文件上传


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

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

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

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

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

    方法1:postman编写测试脚本

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

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

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

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

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

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

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

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

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

    最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

    在这里插入图片描述

    这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

  • 相关阅读:
    金仓数据库 KingbaseES 客户端编程接口指南 - PHP PDO (5. PDO示例)
    常用的排序算法
    vue3 - 项目集成vue-i18n国际化和Element Plus 国际化
    《2022谷歌开发者大会》参会之旅
    基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客?
    解决ssh远程连接服务器出现的中文乱码问题
    LeetCode每日一题——891. 子序列宽度之和
    Android RecycleView列表实现画廊效果
    阈值回归模型(Threshold Regression Model)及R实现
    如何安全地允许用户上传文件
  • 原文地址:https://blog.csdn.net/NHB456789/article/details/133273184