【问题标题】:clearing chromedriver cache - java清除 chromedriver 缓存 - java
【发布时间】:2015-12-07 16:59:55
【问题描述】:

有没有办法使用 selenium API 或 javascript 清除 chromedriver 缓存?

我已经尝试了以下方法:

ChromeOptions options = new ChromeOptions();
                options.addArguments("user-data-dir=" + pathOfChromeProfile);
                //options.addArguments("-incognito");
                options.addArguments("-disable-cache");

                DesiredCapabilities capabilities = DesiredCapabilities.chrome();
                capabilities.setCapability(CapabilityType.ForSeleniumServer.ENSURING_CLEAN_SESSION, true);
                capabilities.setCapability(ChromeOptions.CAPABILITY, options);
                capabilities.setCapability(CapabilityType.SUPPORTS_APPLICATION_CACHE, false);

我也试过 Java Script 我必须与隐身模式中不可用的扩展程序进行交互,因此它不是一个选项。

我也会欣赏 SafariDriver 的类似解决方案。

【问题讨论】:

  • 您好,请看这篇文章link
  • 谢谢,但我不是要删除 cookie,而是要删除浏览器缓存。我正在使用的应用程序将数据存储在浏览器缓存中以使其状态保持不变,但我有多个测试用例假设持久状态不可用(他们必须测试流程中的某些先前状态。)

标签: java selenium ui-automation selenium-chromedriver safaridriver


【解决方案1】:

是的 - 每次都使用新的配置文件。

每个测试都应该有自己的 WebDriver 实例。不要“共享浏览器”。如果您共享浏览器,则不会清除缓存。相反,让每个测试启动自己的浏览器 - 会自动从新缓存开始。

【讨论】:

  • 我没有共享浏览器,我正在为所有测试用例使用新的 Chrome 驱动程序实例。您所说的新用户配置文件是指用户数据主管的路径?
猜你喜欢
  • 2016-02-05
  • 2014-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-25
相关资源
最近更新 更多