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

Selenium测试无法创建Chrome临时配置文件求助(Chrome 115)

Selenium Chrome 115+ 无法创建临时配置文件问题解决

问题详情

  • 开发环境:C# + Visual Studio,使用最新版本的Selenium.Support和Selenium.WebDriver包
  • 异常现象:Chrome升级至115版本后,Selenium不再默认创建干净的临时配置文件,运行测试时会在已有Chrome窗口打开空白标签页,抛出错误:

OpenQA.Selenium.WebDriverException : unknown error: Chrome failed to start: exited normally.
(chrome not reachable)
(The process started from chrome location C:\Program Files\Google\Chrome\Application\chrome.exe is no longer running, so ChromeDriver is assuming that Chrome has crashed.)

  • 已尝试操作:测试多种ChromeOptions参数组合(含incognito、guest、自定义配置文件路径等),卸载重装Chrome,均无法解决;仅关闭所有Chrome窗口后可运行测试,但会复用现有配置文件的缓存和Cookie,不符合测试的隔离性要求。

解决方案:强制创建独立临时配置文件

Chrome 115+ 调整了实例复用逻辑,需显式指定临时用户数据目录并禁用实例共享,确保测试会话完全隔离。

1. 动态生成临时目录

每次测试创建唯一的临时目录,避免路径冲突:

using System.IO;
using System;

// 生成唯一临时目录路径
string tempProfileDir = Path.Combine(Path.GetTempPath(), $"SeleniumChromeTemp_{Guid.NewGuid():N}");
// 创建目录
Directory.CreateDirectory(tempProfileDir);

2. 配置ChromeOptions关键参数

添加参数强制启用独立会话,隔离现有Chrome实例:

ChromeOptions options = new ChromeOptions();
// 指定临时用户数据目录,确保会话干净
options.AddArgument($"user-data-dir={tempProfileDir}");
// 禁用默认浏览器检查,避免干扰
options.AddArgument("no-default-browser-check");
// 跳过首次运行引导
options.AddArgument("no-first-run");
// 适配ChromeDriver跨域要求
options.AddArgument("remote-allow-origins=*");
// 关闭自动填充和密码管理器
options.AddUserProfilePreference("profile.password_manager_enabled", false);
options.AddUserProfilePreference("autofill.profile_enabled", false);

// 初始化WebDriver
IWebDriver webDriver = new ChromeDriver(options);

3. 测试后清理临时目录(可选)

测试结束后删除临时目录,释放磁盘空间:

// 关闭浏览器会话
webDriver.Quit();
// 清理临时目录
try
{
    Directory.Delete(tempProfileDir, recursive: true);
}
catch (Exception ex)
{
    Console.WriteLine($"清理临时目录失败:{ex.Message}");
}

关键说明

  • Chrome 115+ 默认优先复用已启动的Chrome实例,即使使用incognito或guest模式也无法完全隔离,必须通过user-data-dir指定独立目录来强制创建新会话。
  • 动态生成临时目录可避免固定路径导致的资源冲突,确保每次测试都使用全新的干净配置文件。

内容的提问来源于stack exchange,提问作者J.R. Bye

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 22:34:57