You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Jmeter测试Web应用单次可上传的最大媒体文件数量

JMeter测试Web应用单次最大上传媒体文件数量实操方案

前置准备

  • 先抓取前端上传接口的真实请求参数:React前端多文件上传默认用multipart/form-data格式,打开浏览器F12开发者工具,手动发起一次正常多文件上传请求,记录请求URL、鉴权字段(token/session等)、文件对应的表单字段名、其他配套请求参数
  • 准备和实际业务场景一致的测试媒体文件:比如业务中用户上传的是2-5M的jpg图片、10-30M的mp4视频,就用对应大小、格式的文件做测试,避免测试结果和实际生产表现不符

JMeter核心配置

  • 新建测试计划,添加线程组:线程数设为1即可,本次测试是验证单次请求的上传上限,不需要并发压力
  • 线程组下添加HTTP请求采样器:
    • 协议填应用对应的http/https,服务器地址填DigitalOcean上的应用域名或IP,端口填对应服务端口
    • 请求方法选POST,路径填抓包拿到的上传接口路径
    • 「高级」标签页中,客户端实现选择Java,避免多文件/大文件上传时出现IO异常
    • 勾选「使用multipart/form-data」选项
    • 「Files Upload」标签页中,按抓包得到的表单字段名,逐个添加测试文件,对应填写正确的MIME类型,比如image/jpeg、video/mp4
    • 若接口需要其他业务参数,比如用户ID、文件分类标识,在「Parameters」标签页中补充添加即可
  • HTTP请求下添加HTTP信息头管理器:填入抓包得到的所有请求头,鉴权类字段必填,Content-Type不需要手动填写,JMeter会自动生成带boundary的正确值
  • 添加查看结果树、汇总报告两个监听器,用于观测请求返回结果

测试执行逻辑

  • 从低数量梯度开始测试,比如先上传2个文件,请求成功后做三重校验:

不仅要验证接口返回200、返回体提示成功,还要登录后端SQL数据库查询对应文件记录是否全部正确写入,同时登录DigitalOcean服务器确认上传的文件全部成功落盘,避免出现接口返回成功但实际数据存储失败的情况

  • 每次按固定梯度增加上传文件数量,比如每次加3-5个,每轮测试都完成上述三重校验,直到请求报错、或者接口返回成功但实际落库/落盘数量不匹配,上一轮测试成功的文件数即为单次最大可上传数量

适配你的技术栈的注意事项

  • 若要验证用户前端操作的实际上限,先确认React前端代码中是否配置了上传数量限制,前端限制会低于后端真实能力;若要测后端可支持的理论上限,直接用JMeter发请求即可,无需受前端规则限制
  • 测试中如果出现500错误,优先排查SQL是否有事务大小限制、单条INSERT写入上限、数据库连接超时配置,很多时候上传瓶颈出在数据库层而非应用层
  • 测试过程中可以同步观测DigitalOcean后台的服务器带宽、CPU、内存指标,若用了DigitalOcean Spaces对象存储,也要确认是否有单请求上传数量、带宽的规则限制,避免把基础设施层的瓶颈误判为应用层的上限

内容的提问来源于stack exchange,提问作者Hasini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 23:30:05