当我在Edge中开始新的WebDriver会话并浏览到我之前登录的网站时(使用"记住我" Cookie保留在Edge中),WebDriver会话将重新使用我的cookie并显示为已登录。
是否可以在Edge下以InPrivate模式启动WebDriver会话?
答案 0 :(得分:2)
答案 1 :(得分:1)
我不熟悉在InPrivate模式下启动Edge会话的方法,但作为替代方法,您可以在每次测试的@Before步骤中清除Cookie。
例如:
@Test
public void deleteAllCookiesExample() {
driver = new ChromeDriver(); //initialize with Edge here
String url ="http://www.example.com";
driver.navigate().to(url);
driver.manage().deleteAllCookies();
}
或删除具有特定名称的Cookie:
@Test
public void deleteCookieNamedExample() {
driver = new ChromeDriver(); //initialize with Edge here
String URL="http://www.example.com";
driver.navigate().to(URL);
driver.manage().deleteCookieNamed("__utmb"); //example cookie name
}
P.S。在以前的IE版本中有一个bug,在您访问该页面之前无法访问cookie。所以考虑在那之后重新加载页面或尝试类似的东西(它在IE11中工作):
DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
capabilities.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true);
WebDriver driver = new InternetExplorerDriver(caps);