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

Selenium框架重启Chrome时提示“Chrome未正确关闭”问题求助

解决Selenium启动Chrome时“未正确关闭”的提示问题

嘿,这个问题我太熟了!每次跑自动化测试弹这个提示确实影响效率,咱们从几个维度来搞定它:

1. 确保测试结束时彻底关闭浏览器进程

很多时候问题出在测试用例执行完后,浏览器或chromedriver进程没完全杀掉,导致下次启动时Chrome认为上次异常退出。

  • 一定要用driver.quit()而不是driver.close():close()只会关闭当前标签页,quit()才会终止整个浏览器实例和chromedriver进程。
  • 如果还是有进程残留(尤其是Windows系统),可以在测试的teardown阶段手动清理进程:
// 在测试结束的清理方法中添加这段代码
try {
    Runtime.getRuntime().exec("taskkill /F /IM chromedriver.exe /IM chrome.exe");
} catch (IOException e) {
    e.printStackTrace();
}

2. 通过ChromeOptions禁用崩溃提示&使用干净的用户环境

给ChromeOptions添加几个关键参数,让每次启动都是“全新”的状态,跳过异常关闭的检查:

ChromeOptions options = new ChromeOptions();
// 禁用自动化扩展(你已经加了这个,很好)
options.setExperimentalOption("useAutomationExtension", false);
// 禁用崩溃恢复提示气泡,直接解决弹窗问题
options.addArgument("--disable-session-crashed-bubble");
// 使用临时用户数据目录,每次启动都是干净环境,避免残留状态
options.addArgument("--user-data-dir=" + System.getProperty("java.io.tmpdir") + "/chrome_temp_" + System.currentTimeMillis());
// 禁用首次运行提示
options.addArgument("--no-first-run");
// 禁用信息栏(可选,减少干扰)
options.addArgument("--disable-infobars");
// 禁用扩展(可选,避免扩展干扰测试)
options.addArgument("--disable-extensions");

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

3. 检查chromedriver和Chrome版本兼容性

如果你的chromedriver和Chrome浏览器版本不匹配,也可能导致异常退出的情况。确保两者版本严格对应:比如Chrome 114.x对应chromedriver 114.x,以此类推。

试试上面的方法,基本能解决这个烦人的提示啦!

内容的提问来源于stack exchange,提问作者VISHVAMBRUTH J T

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:36:38