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

GitLab CI运行JMeter负载测试脚本提示No such file or directory如何解决

报错原因分析
  • Runner运行环境不匹配:你配置中使用的是Windows风格的盘符路径c:\apache-jmeter-5.4.1\bin,如果GitLab CI Runner实际运行在Linux或macOS环境下,不存在C盘盘符,也不识别反斜杠作为路径分隔符,自然会找不到目标目录。
  • 目标路径不存在:GitLab CI任务默认运行在干净的执行环境中,如果你没有提前在Runner节点安装JMeter到指定路径,也没有在CI脚本中提前下载部署JMeter,对应路径本身就不存在。
  • 路径拼写或大小写错误:Linux环境下路径对大小写敏感,比如实际路径为Apache-Jmeter-5.4.1时,写小写的apache-jmeter-5.4.1就会触发报错;如果路径存在拼写错误也会导致相同问题。
  • 工作目录不匹配:如果你把JMeter或者测试脚本放在项目仓库内,CI任务的默认工作目录是仓库根目录,直接写绝对路径会找不到仓库内的相关文件。
排查修复方案
  1. 确认Runner操作系统类型
    在CI脚本最前面添加系统信息打印命令,确认执行环境:

Linux/macOS环境添加 uname -a,Windows环境添加 systeminfo | findstr /B /C:"OS Name"
根据环境调整路径格式:Linux/macOS使用斜杠/作为路径分隔符,无盘符;Windows可使用反斜杠\或斜杠作为分隔符。

  1. 确认目标路径是否存在
    在cd步骤前添加目录打印命令,排查路径是否存在:
  • Linux/macOS环境添加 ls / 查看根目录结构
  • Windows环境添加 dir c:\ 查看C盘目录结构
    如果确认没有JMeter目录,两种方案处理:
    • 提前在Runner节点安装JMeter到固定路径,CI脚本直接调用该路径
    • 在CI脚本中先下载部署JMeter再执行测试,Linux环境示例脚本:
script:
  - wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.4.1.tgz
  - tar -xzf apache-jmeter-5.4.1.tgz
  - cd apache-jmeter-5.4.1/bin
  - chmod +x jmeter
  - ./jmeter -n -t ../../../test.jmx -l testresults.jtl
  1. 修正测试脚本路径
    你当前脚本中直接写test.jmx,默认会读取JMeter bin目录下的文件,而测试脚本一般存放在项目仓库中,需要写对应相对路径或绝对路径指向仓库内的jmx文件,避免文件找不到。

  2. 路径加引号规避空格问题
    如果路径中存在空格,必须用引号包裹完整路径,比如cd "c:\Program Files\apache-jmeter-5.4.1\bin",否则shell会把空格后的内容识别为独立参数,导致路径解析错误。

内容的提问来源于stack exchange,提问作者HARINI B K

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 07:45:02