首页 > 解决方案 > Java 中的 Chrome Webdriver 分离选项

问题描述

我在 Java 中使用 ChromeDriver for Selenium。

我想在测试完成后让浏览器保持打开状态。默认行为是关闭浏览器。我试过以下

 options.setCapability("detach", true);
 driver = new ChromeDriver(options);

或者

options.setExperimentalOption("detach", true);

两者似乎都不起作用。在 Java 中使用它的正确方法是什么?

标签: seleniumwebdriverselenium-chromedriver

解决方案


根据detach物业描述

如果为 false,ChromeDriver 被杀死时 Chrome 将退出,无论会话是否退出。如果为 true,Chrome 将仅在会话退出(或关闭)时退出。请注意,如果为 true,并且会话未退出,ChromeDriver 无法清理正在运行的 Chrome 实例正在使用的临时用户数据目录。

这意味着(AFAIU)这仅控制您是否要保持浏览器打开,以防您的 WebDriver 进程意外终止。这不包括您的特定情况。

您可以在测试完成后(不是quit它)让您的驱动程序处于活动状态,并为每个新测试创建新的 WebDriver 对象。然而,从性能的角度来看,这不是有效的方法。


推荐阅读