【问题标题】:How to clear browser cache in Selenium test如何在 Selenium 测试中清除浏览器缓存
【发布时间】:2012-03-22 16:04:36
【问题描述】:

我正在使用 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)

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

谢谢

【问题讨论】:

  • 在 IE 中,我通过设置 IE 缓存的最低磁盘空间和称为“始终检查更新页面”之类的选项来在一定程度上管理这一点(我没有英文 XP,所以不能告诉它确切名称)

标签: java selenium selenium-webdriver browser-cache


【解决方案1】:

DT_IE_AGENT_ACTIVE=true 激活插件以便从当前浏览器会话中收集数据

希望对你有帮助

【讨论】:

    【解决方案2】:

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

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

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

    HTH

    【讨论】:

      【解决方案3】:

      我已经在 python 中使用了这行代码来执行此操作,并且似乎每次都清除缓存(Internet Explorer)

      capab = DesiredCapabilities.INTERNETEXPLORER

      capab.clear()

      【讨论】:

        猜你喜欢
        • 2011-10-23
        • 1970-01-01
        • 2020-09-22
        • 2013-07-17
        • 1970-01-01
        • 1970-01-01
        • 2010-11-05
        • 2013-11-24
        • 2020-02-29
        相关资源
        最近更新 更多