Protractor报错:session not created,ChromeDriver仅支持Chrome 84版本求助
解决ChromeDriver版本匹配问题的思路
Hey there, let's break down how to handle this ChromeDriver version mismatch issue you're facing:
首先明确核心前提:版本必须严格对应
ChromeDriver和Chrome浏览器的版本必须完全匹配(比如Chrome 84 ↔ ChromeDriver 84,Chrome 86 ↔ ChromeDriver 86)。第一步你得先确认自己的Chrome浏览器当前版本:
- 打开Chrome,输入
chrome://version/查看完整版本号。
两种可选方案:
方案1:降级ChromeDriver到84版本(可行,但需配合浏览器版本)
如果你的Chrome浏览器还停留在84版本,这个方案完全可行。你当前的webdriver-manager@12.1.7支持指定下载特定版本的ChromeDriver:
- 命令行方式:
# 先清理旧缓存(可选但推荐,避免版本混淆) webdriver-manager clean # 指定下载ChromeDriver 84的稳定版(注意版本号要精确,比如84.0.4147.30) webdriver-manager update --versions.chrome 84.0.4147.30 - 代码配置方式(比如Protractor项目):
在你的配置文件中指定ChromeDriver路径:exports.config = { chromeDriver: './node_modules/webdriver-manager/selenium/chromedriver_84.0.4147.30', // 其他项目配置... }
方案2:升级ChromeDriver到86版本(更推荐,规避浏览器自动升级冲突)
如果你的Chrome浏览器已经自动升级到86了,不建议强行降级浏览器(会带来安全风险),更合理的做法是让ChromeDriver匹配浏览器版本:
- 直接运行默认更新命令,webdriver-manager 12.1.7会自动下载对应86版本的ChromeDriver:
webdriver-manager update
是否需要升级其他组件?
- 若选方案1(降级到84):只要你的Selenium版本不是过于老旧(比如Selenium 3.x及以上),都能兼容ChromeDriver 84,无需额外升级。
- 若选方案2(升级到86):webdriver-manager 12.1.7本身支持ChromeDriver 86,不需要升级webdriver-manager;同样,Selenium 3.x也能兼容86版本的Driver,除非你用的是非常旧的Selenium 2.x版本,那才需要考虑升级Selenium到3.x或4.x。
额外注意:阻止Chrome自动升级
如果想避免以后再出现这种自动升级导致的版本不匹配问题,可以关闭Chrome的自动更新:
- Windows:打开服务管理器,找到
Google Update服务,设置为禁用。 - Mac:打开系统偏好设置 → 软件更新 → 取消勾选Chrome的自动更新选项。
内容的提问来源于stack exchange,提问作者macqo
相关产品推荐
相关产品推荐

