Selenium - Créer, mettre à jour et supprimer des cookies

Presque tous les sites Web utilisent des cookies sous une forme ou une autre. Biscuits sont un moyen de se souvenir des utilisateurs et de leur interaction avec le site en stockant des informations dans le fichier cookie sous forme de paires clé-valeur.

Lors du test d'un site Web avec Selenium WebDriver, il est parfois nécessaire de gérer les cookies, tels que la création de nouveaux cookies, la mise à jour des cookies existants avec de nouvelles informations ou la suppression des cookies.

Dans ce didacticiel WebDriver, nous examinons la gestion des cookies dans WebDriver. Exemples de code Java expliquant comment créer, mettre à jour et supprimer des cookies à l'aide de Selenium WebDriver.


Pour utiliser l'une des méthodes de gestion des cookies dans WebDriver, nous devons d'abord importer la classe Cookie. Pour ce faire, nous utilisons

import org.openqa.selenium.Cookie;

Récupérer tous les cookies

//This method gets all the cookies public Set getAllCookies() {
return driver.manage().getCookies(); }

Récupérer un cookie nommé

//This method gets a specified cookie public Cookie getCookieNamed(String name) {
return driver.manage().getCookieNamed(name); }

Récupérer la valeur d'un cookie

//This method gets the value of a specified cookie public String getValueOfCookieNamed(String name) {
return driver.manage().getCookieNamed(name).getValue(); }

Ajouter un cookie

//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)); }

Ajouter un ensemble de cookies

//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(); }

Supprimer un cookie spécifique

//This method deletes a specific cookie public void deleteCookieNamed(String name) {
driver.manage().deleteCookieNamed(name); }

Supprimer tous les cookies

//This method deletes all cookies public void deleteAllCookies() {
driver.manage().deleteAllCookies(); }