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

我正在使用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循环中,我想要做的第一件事是清除我的CACHE(IE,MOZILLA&CHROME)

任何想法我怎么能实现这一目标?

谢谢

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

Selenium问题跟踪器中针对问题#40(清除缓存)的注释列出了如果无法创建新浏览器实例,则可能出现两个问题的潜在解决方案:

  1. 从命令行清除IE缓存
  2. 使用自定义配置文件禁用FF缓存

HTH

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

希望它有所帮助

我在python中使用了这行代码来做到这一点,似乎每次都清除缓存(Internet Explorer)

capab = DesiredCapabilities.INTERNETEXPLORER

capab.clear()