Почти всички уебсайтове използват бисквитки в една или друга форма. Бисквитки са начин за запомняне на потребителите и тяхното взаимодействие със сайта чрез съхраняване на информация във файла с бисквитки като двойки ключ-стойност.
Когато тествате уебсайт с Selenium WebDriver, понякога е необходимо да боравите с бисквитки, като например създаване на нови бисквитки, актуализиране на съществуващи бисквитки с нова информация или изтриване на бисквитки.
В този урок за WebDriver разглеждаме обработката на бисквитки в WebDriver. Примери за Java код за създаване, актуализиране и изтриване на бисквитки с помощта на Selenium WebDriver.
За да използваме някой от методите за обработка на бисквитки в WebDriver, първо трябва да импортираме класа Cookie. За целта използваме
import org.openqa.selenium.Cookie;
//This method gets all the cookies public Set getAllCookies() {
return driver.manage().getCookies(); }
//This method gets a specified cookie public Cookie getCookieNamed(String name) {
return driver.manage().getCookieNamed(name); }
//This method gets the value of a specified cookie public String getValueOfCookieNamed(String name) {
return driver.manage().getCookieNamed(name).getValue(); }
//This method adds or creates a cookie public void addCookie(String name, String value, String domain, String path, Date expiry) {
driver.manage().addCookie(
new Cookie(name, value, domain, path, expiry)); }
//This method adds set of cookies for a domain public void addCookiesToBrowser(Set cookies, String domain) {
for (Cookie c : cookies) {
if (c != null) {
if (c.getDomain().contains(domain)){
driver.manage().addCookie(
new Cookie(name, value, domain, path, expiry));
}
}
}
driver.navigate().refresh(); }
//This method deletes a specific cookie public void deleteCookieNamed(String name) {
driver.manage().deleteCookieNamed(name); }
//This method deletes all cookies public void deleteAllCookies() {
driver.manage().deleteAllCookies(); }