2013-03-31 66 views
0

我的要求是使用Selenium WebDriver刪除所有Cookie(所有域)Cookie。但在硒中,我們只能刪除域名cookie。所以我試圖使用Ctrl + Shift + Delete的按鍵事件。我們如何刪除Selenium中的所有域cookie?

在這裏,我嘗試了下面。 Actions action = new Actions(webdriver); action.keyDown(Keys.CONTROL).keyDown(Keys.SHIFT).sendKeys(Keys.DELETE).perform(); 但它沒有顯示任何瀏覽器警報?

任何人都可以在這種情況下協助我嗎?或任何替代解決方案來刪除所有域cookie?

回答

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()