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

Jenkins运行Nightwatch.js测试时遇chromedriver spawn EACCES错误求助

解决Jenkins运行Nightwatch.js测试时的Error: spawn chromedriver_win32/chromedriver.exe EACCES错误

问题场景

通过Jenkins运行Nightwatch.js测试时触发权限错误,相关信息如下:
错误信息:

Error: spawn chromedriver_win32/chromedriver.exe EACCES

Nightwatch.conf.js配置片段:

module.exports = {
  "src_folders": ["tests"],
  "webdriver": {
    "start_process": true,
    "server_path": "chromedriver_win32/chromedriver.exe",
    "port": 9515
  },
};

chromedriver_win32文件夹仅包含chromedriver.exe。


解决步骤

EACCES错误核心是进程无权限执行chromedriver.exe或路径解析异常,针对Jenkins环境按以下顺序排查:

  • 给Jenkins运行用户添加权限
    Windows下Jenkins默认以Local System用户运行,需确保该用户拥有chromedriver_win32文件夹和chromedriver.exe的读取+执行权限:
    右键文件夹→属性→安全→编辑→添加Jenkins运行用户(如NT AUTHORITY\SYSTEM),勾选「读取和执行」「列出文件夹内容」「读取」权限后保存。

  • 改用绝对路径配置
    相对路径在Jenkins工作目录下可能解析错误,直接替换为绝对路径:

    module.exports = {
      "src_folders": ["tests"],
      "webdriver": {
        "start_process": true,
        // 替换为你的实际绝对路径,示例:
        "server_path": "C:/jenkins/workspace/your-project-name/chromedriver_win32/chromedriver.exe",
        "port": 9515
      },
    };
    
  • 验证chromedriver与Chrome版本兼容性
    确认chromedriver版本和测试环境的Chrome浏览器大版本一致(比如Chrome 118对应chromedriver 118.x),版本不匹配会触发权限或启动异常,下载对应版本替换即可。

  • 临时禁用Jenkins安全沙箱(谨慎操作)
    若Jenkins启用了安全沙箱,可能限制进程执行权限:进入任务配置→构建环境,取消勾选「启用安全沙箱」(仅在确认项目安全的情况下使用)。


内容的提问来源于stack exchange,提问作者King Reinhardt IV

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 16:42:23