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

Windows10下执行npm run web遇Webdriverio语法错误求助

解决Windows10下webdriverio v4执行npm run web的语法错误问题

我之前也碰到过这个问题,核心原因是Windows默认的命令行环境(CMD/PowerShell)不支持Bash脚本语法,而你调用的node_modules/.bin/wdio是一个Bash脚本,里面的basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")属于Bash专属语法,CMD无法解析,所以抛出了SyntaxError: missing ) after argument list错误。

下面是几个可行的解决办法:

方法一:直接用Node.js运行wdio的JS入口文件

绕过Bash脚本,直接调用webdriverio的JavaScript执行文件,修改你的package.json中scripts字段:

"scripts": {
  "web": "node node_modules/webdriverio/bin/wdio.js ./test/config/suite.web.conf.js"
}

修改后重新执行npm run web,Windows环境下Node.js可以直接解析这个JS文件,不会再出现Bash语法兼容问题。

方法二:使用支持Bash的终端执行命令

如果想保留原有的scripts配置,可以在支持Bash的终端中运行命令:

  • 安装并打开Git Bash,在里面执行npm run web
  • 启用Windows子系统Linux(WSL),切换到WSL环境后执行命令

这类终端能正确解析Bash脚本里的语法,自然就能正常运行了。

方法三:重新安装依赖确保完整性

有时候依赖安装不完整也会导致脚本异常,你可以尝试:

  1. 删除项目根目录下的node_modules文件夹和package-lock.json文件
  2. 执行npm install重新安装所有依赖
  3. 再次运行npm run web

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:06:36