Geckodriver升级至0.35后遇InvalidArgumentError: missing field 'capabilities'错误求助
修复geckodriver 0.35.0下Protractor测试报"missing field 'capabilities'"错误的方案
先修正配置文件的语法错误
你贴出的修改后capabilities代码遗漏了闭合的大括号},这会直接导致配置解析失败,先补上这个语法问题:capabilities: { browserName: 'firefox', unexpectedAlertBehaviour: 'accept', 'moz:firefoxOptions': { args: [ "--headless" ] } } // 补上此处的闭合大括号升级Protractor到兼容版本
geckodriver 0.35.0彻底移除了对desiredCapabilities的支持,旧版本Protractor可能仍在使用废弃的会话协商逻辑。建议将Protractor升级到7.0.0及以上的稳定版本,新版本已完全适配W3C标准的capabilities格式,不会再依赖废弃字段。排查代码中的硬编码旧API调用
如果测试代码里存在手动构造desiredCapabilities、调用browser.driver.getCapabilities()这类旧逻辑,需要替换为符合W3C标准的写法,完全依赖Protractor配置中的capabilities字段来初始化会话。验证Firefox与geckodriver版本兼容性
geckodriver 0.35.0要求Firefox版本至少为115.0,在Jenkins服务器上执行firefox --version确认版本,若版本过低则升级Firefox。清理Protractor缓存
旧缓存可能干扰配置加载,执行以下命令清理缓存:rm -rf node_modules/.cache/protractor
内容的提问来源于stack exchange,提问作者librogil
相关产品推荐
相关产品推荐

