对于IE,您将使用以下功能:
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true);
并可能与
结合使用 driver.manage().deleteAllCookies();
如何使用Chrome和ChromeDriver实现这一目标?
答案 0 :(得分:2)
我们使用 init
时,我们使用字段 Internet Explorer Driver
IE_ENSURE_CLEAN_SESSION
强> 根据JavaDocs IE_ENSURE_CLEAN_SESSION
是能力,它定义在IEDriverServer启动Internet Explorer之前是否清理浏览器缓存,并配置如下:
IE_ENSURE_CLEAN_SESSION
现在让我们看一下 DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true);
之后的 GeckoDriver
。
WebDriver Spec
/ GeckoDriver
/ moz:profile
如果您仔细查看 rust_mozprofile
日志,您会发现每次 geckodriver
被称为新的 geckodriver
已被删除, moz:profile
的详细信息发生在以下行:
rust_mozprofile
此日志清楚地表明Marionette挖出了一个新的 Marionette CONFIG Matched capabilities: {"browserName":"firefox","browserVersion":"56.0","platformName":"windows_nt","platformVersion":"6.2","pageLoadStrategy":"normal","acceptInsecureCerts":false,"timeouts":{"implicit":0,"pageLoad":300000,"script":30000},"rotatable":false,"specificationLevel":0,"moz:processID":5848,"moz:profile":"C:\\Users\\AtechM_03\\AppData\\Local\\Temp\\rust_mozprofile.OfFuR9ogm33d","moz:accessibilityChecks":false,"moz:headless":false}
,此配置由WebDriver实例处理,即 "moz:profile":"C:\\Users\\AtechM_03\\AppData\\Local\\Temp\\rust_mozprofile.OfFuR9ogm33d"
。< / p>
您可以在Is it Firefox or Geckodriver, which creates “rust_mozprofile” directory
讨论中找到关于 GeckoDriver
的更详细讨论。
moz:profile
强> ChromeDriver
遵循相同的 ChromeDriver
确实遵守(将会遵守)相同的套件。
如果您使用任何存储的
WebDriver Spec
或FirefoxProfile
,ChromeProfile
将会提起WebDriver
的现有配置文件已被选中以供重复使用。
Stored Browser Configurations
强> 如果您添加以下内容,我会考虑新的/现有的 driver.manage().deleteAllCookies();
或 FirefoxProfile
:
ChromeProfile
只有Cookie被删除才会被恢复以支持 driver.manage().deleteAllCookies();