Selenium测试因Edge WebDriver异常失败,版本不匹配问题咨询
Edge WebDriver版本不匹配问题的排查与解决
你的问题核心是系统实际调用的仍是106版本的Edge驱动,而非你安装的108版本,以下是具体排查方向和解决办法:
检查PATH优先级问题
打开命令提示符,执行msedgedriver --version,如果返回版本是106,说明旧驱动的PATH条目优先级高于你添加的108版本路径。- 解决:在系统环境变量的PATH中,将108版驱动的文件夹路径移到所有包含旧驱动的路径之前;或者直接删除旧驱动的PATH配置,删除旧版驱动文件。
排查项目内置驱动依赖
如果测试项目通过NuGet等包管理工具引用了Edge驱动相关包(比如Selenium.WebDriver.MSEdgeDriver),包内可能自带了旧版驱动,会优先于系统PATH中的驱动被调用。- 解决:更新对应的驱动包到108.x版本;或者在代码中直接指定驱动的绝对路径,示例C#代码:
var driverService = EdgeDriverService.CreateDefaultService(@"C:\你的108版驱动所在文件夹"); var driver = new EdgeDriver(driverService);
- 解决:更新对应的驱动包到108.x版本;或者在代码中直接指定驱动的绝对路径,示例C#代码:
清理残留的驱动进程
Edge浏览器更新后,旧驱动进程可能仍在后台运行,导致新驱动无法正常被调用。- 解决:打开任务管理器,找到并结束所有
msedgedriver.exe进程,重新运行测试。
- 解决:打开任务管理器,找到并结束所有
验证用户与系统PATH的区别
你添加的是用户环境变量PATH,而系统环境变量PATH的优先级更高,如果系统PATH中存在旧驱动路径,会优先被使用。- 解决:将108版驱动路径添加到系统环境变量的PATH中,确保其优先级高于旧驱动路径。
内容的提问来源于stack exchange,提问作者AlvinfromDiaspar
相关产品推荐
相关产品推荐

