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

JMeter目录上传失败求助:文件名路径丢失异常

解决JMeter批量上传文件时文件名路径被截断的问题

我之前也碰到过一模一样的问题——JMeter总是把filename里的路径部分砍掉,导致服务器识别不了文件,上传直接失败。咱们来一步步搞定它:

问题根源

JMeter的HTTP请求组件默认会自动从你填写的File Path里提取纯文件名(去掉路径),哪怕你手动在File Name字段填了带路径的内容,它也会偷偷覆盖或者截断,这就是你看到路径消失的原因。

两种可行解决方案

方案一:用JSR223前置处理器强制设置完整文件名

这个方法适合用CSV批量读取文件路径的场景,能保留完整路径作为filename:

  1. 先配置CSV数据源

    • 创建一个CSV文件,每行写一个完整的文件路径,比如:
      Actress/tatiana maslany/30_612x344_tatiana_maslany_sarah_orphanblack.jpg
      Actress/tatiana maslany/another_photo.jpg
      
    • 添加CSV Data Set Config,把CSV路径填进去,变量名设为file_path(方便后续引用),分隔符留空就行。
  2. 配置HTTP请求

    • 在HTTP请求的Files Upload部分:
      • File Path填${file_path}
      • Parameter Name填file(和服务器要求的参数名一致)
      • MIME Type填image/jpeg
      • File Name字段留空,我们后面用脚本修改。
  3. 添加JSR223前置处理器

    • 给HTTP请求加一个JSR223 PreProcessor,粘贴下面的代码:
      import org.apache.jmeter.protocol.http.multipart.FilePart;
      
      def arguments = sampler.getArguments();
      for (int i = 0; i < arguments.getArgumentCount(); i++) {
          def arg = arguments.getArgument(i);
          if (arg instanceof FilePart) {
              FilePart filePart = (FilePart) arg;
              // 强制设置filename为完整路径
              filePart.setFileName(vars.get("file_path"));
          }
      }
      

    这段代码会找到请求里的文件上传参数,把filename改成我们从CSV里拿到的完整路径。

方案二:手动构造Raw请求内容

如果不想用脚本,也可以直接写原始的multipart请求体,完全控制每个部分:

  1. 配置HTTP请求

    • 方法选POST,填好目标URL。
    • 打开Body Data标签,手动构造请求内容:
      ------aiYHC13zS69CLqZX
      Content-Disposition: form-data; name="file"; filename="${file_path}"
      Content-Type: image/jpeg
      
      ${__FileToString(${file_path},,)}
      ------aiYHC13zS69CLqZX--
      
    • 注意:把${file_path}换成你实际的变量名,边界字符串aiYHC13zS69CLqZX要和请求头里的一致。
  2. 添加请求头

    • 给HTTP请求加一个HTTP Header Manager,添加Content-Type头:
      Content-Type: multipart/form-data; boundary=aiYHC13zS69CLqZX
      

验证结果

设置好之后,用View Results Tree查看请求的实际内容,确认filename部分是完整的路径,再跑测试应该就能成功上传了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:35:02