我的要求是使用Selenium WebDriver删除所有Cookie(所有域名)Cookie。但在selenium中,我们只能删除域cookie。所以我正在尝试使用Ctrl + Shift + Delete的按键事件。
我在这里尝试过如下。 Actions action = new Actions(webdriver);
action.keyDown(Keys.CONTROL).keyDown(Keys.SHIFT).sendKeys(Keys.DELETE).perform();
但它没有显示任何浏览器警报?
在这种情况下,有人可以帮助我吗?或删除所有域cookie的任何替代解决方案?
答案 0 :(得分:0)
使用以下java代码删除cookie。
protected void deleteCookie(String cookieName)
{
String cookieDomain =
CTPropertiesManager.getProperty("site.properties","site.cookie.domain");
try
{
//get all cookies
Cookie cookies[] = request.getCookies();
Cookie ctCookie=null;
if (cookies !=null)
{
for(int i=0; i<cookies.length; i++)
{
ctCookie=cookies[i];
if (ctCookie.getName().trim().equals(cookieName))
{
if ( cookieDomain != null )
{
ctCookie.setDomain(cookieDomain);
}
ctCookie.setPath("/ct");
ctCookie.setMaxAge(0);
response.addCookie(ctCookie);
}
}//end for
}//end if cookie
}//end try
catch(Exception e){
CTLogManager.log(e);
}
}//end deleteCookie()