java - Selenium测试中如何清除浏览器缓存

标签 java selenium selenium-webdriver browser-cache

我正在使用 WebDriver 运行我的 Selenium 测试。我正在用一些循环重复测试,所以现在我想在开始新的 JAVA 测试之前清除缓存。

@Test
public void ffAndIe() throws InterruptedException {
    int i = 0;
    while(i < 5000){

        driver.get("http://dit-map.appspot.com/");
        Thread.sleep(15000);
        driver.get("http://dit- map.appspot.com/#home:zoom=7&lat=37.04&lng=25.05&display=weather");
        Thread.sleep(15000);
        driver.get("http://dit-map.appspot.com/#home:zoom=9&lat=37.55&lng=23.83&display=weather,wind");
        Thread.sleep(10000);
        driver.get("http://dit-map.appspot.com/#home:zoom=9&lat=37.84&lng=23.22&display=weather,wind,cloud");
        Thread.sleep(10000);
        driver.get("http://dit-map.appspot.com/?lang=en#home:zoom=10&lat=38.13&lng=22.59&display=weather,wind,meteogram");
        Thread.sleep(10000);
        i++;
    }
}

在这个 while 循环中,我要做的第一件事是清除缓存(IE、MOZILLA 和 CHROME)

知道我怎样才能做到这一点吗?

谢谢

最佳答案

目前无法通过网络驱动API清除缓存。但是,如果您每次都可以启动一个新的浏览器实例,则应在 FF 中清除缓存。和 Chrome因为每次启动都会创建一个新的配置文件。

issue #40 (Clear cache)的评论如果无法创建新的浏览器实例,请在 Selenium 问题跟踪器中列出两种可能的解决方案:

  1. Clear the IE cache从命令行
  2. Disable the FF cache使用自定义配置文件

HTH

关于java - Selenium测试中如何清除浏览器缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9562327/

相关文章:

java - 如何确保所有字段都加载到 selenium 中的页面上,以便没有一个字段过时?

java - 使用 selenium java 单击 Facebook 'share' 按钮

python - 如何组合 WebDriver find_elements_by* 调用,同时跟踪结果的顺序?

java - 使用 Selenium 3.0 启动 Firefox 46.0.1 时出现 IllegalStateException

Java存储过程: OUT params

java - 设置最大日期(日期选择器)

java - Grails gwt 模块中的 ClassNotFoundException

java - SQL 和 Jython - 选择列中的最大值

java - 无法与 iframe 交互

java - 在 xpath 定位器中使用 DOM 标签是一个好的实践吗?