美文网首页
基于Locust框架进行文件上传下载性能测试

基于Locust框架进行文件上传下载性能测试

作者: 码同学软件测试 | 来源:发表于2022-07-26 09:34 被阅读0次

    每天进步一点点,关注我们哦,每天分享测试技术文章

    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试

    码同学抖音号:小码哥聊软件测试

    在很多业务场景中,需要针对文件上传和下载进行测试。当你要测试一个业务时,必须要先理解这个业务的本质。我们先来看下上传和下载的本质。

    文件上传过程

    1、在浏览器上选择本地文件,点击上传

    2、浏览器读取本地文件,将文件内容放到HTTP请求的body中,然后在HTTP请求头中,标记请求数据类型:

    Content-type:multipart/form-data,

    以post形式提交至服务端。

    3、服务端接受到请求数据后,在服务器上新建一个文件,将body中的数据写入到文件,一次文件上传处理完成。

    文件下载过程

    1、在浏览器上点击下载按钮,向服务端发起一个HTTP get类型请求

    2、服务端接收到请求后,将对应文件内容读取出来,写入到HTTP响应中,并在响应头里标记Content- Disposition: attachment; filename=xxx

    3、浏览器接受到响应后,根据标记识别出本次是下载请求,根据标记中的filename在本地创建一个同名文件,然后将响应中的数据写入到文件里,一次下载文件处理完成。

    从上传和下载的描述中可以看出,所谓的文件上传和下载,其实都是将文件内容附加到HTTP请求里进行传输。

    使用Locust测试文件上传下载

    先来看下某项目上传和下载的接口文档

    文件上传脚本编写

    免费领取码同学软件测试课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章+ 私信「码同学666」获取资料哦

    执行脚本,在本地浏览器中请求http://localhost:8089/,输入并发用户,和ip端口,点击开始执行

    可以在Pycharm的控制台上打印出每次上传的返回结果

    文件下载脚本编写

    执行脚本,在locust UI界面上

    开始测试,可以在Pycharm中看到接口的返回值

    注意事项

    下载文件过程中,服务端只负责把文件内容返回给客户端,文件的创建和保存应该是客户端来做的。如果做服务端的接口测试,本地就不需要创建文件了。文件的内容是放在响应body中的,只需要判断响应body的大小和文件大小相同,即代表下载成功了。

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可以关注我们公众号哦:自动化软件测试

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

    相关文章

      网友评论

          本文标题:基于Locust框架进行文件上传下载性能测试

          本文链接:https://www.haomeiwen.com/subject/seqoirtx.html