Selenium升级至4.19.0后出现Selenium Manager获取Chrome失败问题
问题分析
升级Selenium至4.19.0后出现的NoSuchDriverException,核心原因是项目中残留的旧版Selenium Manager与新版本Selenium的调用逻辑不兼容:新版本Selenium会向Selenium Manager传递--language-binding参数,但你本地bin目录里的旧版Selenium Manager不支持该参数,导致执行失败。同时你手动安装的Selenium.WebDriver.ChromeDriver包也会和Selenium自带的Manager功能冲突,进一步加重问题。
解决方案
- 删除残留的旧版Selenium Manager:找到路径
C:\Automation\DevTools\ui-automation\UIAutomation\UIAutomation\bin\Debug\selenium-manager,删除整个selenium-manager目录。新版本Selenium会在运行时自动生成适配当前版本的Manager文件。 - 移除
Selenium.WebDriver.ChromeDriverNuGet包:从项目中卸载该包。Selenium 4.6.0及以上版本自带的Selenium Manager会自动检测、下载、匹配对应版本的ChromeDriver,无需手动安装驱动包。 - 清理NuGet缓存并重新还原依赖:
打开终端执行命令:
然后在项目目录下执行:dotnet nuget locals all --cleardotnet restore - 简化ChromeDriver初始化代码:确保代码中没有手动指定驱动路径,使用默认初始化方式即可:
using OpenQA.Selenium.Chrome; var driver = new ChromeDriver();
内容的提问来源于stack exchange,提问作者hweih
相关产品推荐
相关产品推荐

