使用 Selenium WebDriver Java 绑定清除浏览器 Cookies。

software testingautomation testingselenium web driverjava

我们可以在 Selenium 中清除浏览器 cookies。方法 deleteCookieNamed 将删除具有特定名称的 cookie。命名的 cookie 作为参数传递给该方法。首先,我们将添加一个 cookie,然后获取它并最终删除它。

语法

driver.manage().deleteCookieNamed("foo");

另一种称为 deleteAllCookies 的方法将从现有域中删除所有 cookie。首先,我们将添加 cookie,然后获取并删除它们。

语法

driver.manage().deleteAllCookies();

示例

import java.util.Set;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
public class DeleteCookiesViaName{
   public static void main(String[] args) {
      System.setProperty("webdriver.chrome.driver",
      "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
      WebDriver driver = new ChromeDriver();
      driver.get("https://www.tutorialspoint.com/index.htm");
      // 等待 4 秒
      driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS);
      // 设置 cookie 的名称和值
      Cookie c = new Cookie("test", "selenium");
      Cookie r = new Cookie("subject", "Java");
      // 添加 cookie
      driver.manage().addCookie(c);
      driver.manage().addCookie(r);
      // 获取 cookies
      Set<Cookie> ck = driver.manage().getCookies();
      // 遍历 cookies
      for (Cookie cookie : ck) {
         System.out.println("Cookie Name : "+cookie.getName());
         System.out.println("Cookie Value : "+cookie.getValue());
         // 根据名称删除 cookies
         driver.manage().deleteCookieNamed(cookie.getName());
      }
      // 获取删除后的 cookie
      Set ch = driver.manage().getCookies();
      System.out.println("删除后的 Cookie 数量:"+ch.size());
   }
}

示例

使用 deleteAllCookies 的代码实现。

import java.util.Set;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
public class DeleteCookiesAll{
   public static void main(String[] args) {
      System.setProperty("webdriver.chrome.driver",
      "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
      WebDriver driver = new ChromeDriver();
      driver.get("https://www.tutorialspoint.com/index.htm");
      // 等待 4 秒
      driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS);
      // 设置 cookie 的名称和值
      Cookie c = new Cookie("test", "selenium");
      Cookie r = new Cookie("subject", "Java");
      // 添加 cookie
      driver.manage().addCookie(c);
      driver.manage().addCookie(r);
      // 获取 cookies
      Set<Cookie> ck = driver.manage().getCookies();
      // 遍历 cookies
      for (Cookie cookie : ck) {
         System.out.println("Cookie Name : "+cookie.getName());
         System.out.println("Cookie Value : "+cookie.getValue());
      }
      // 删除 cookies
      driver.manage().deleteAllCookies();
      // 获取删除后的 cookies
      Set ch = driver.manage().getCookies();
      System.out.println("删除后的 Cookie 数量:"+ch.size());
   }
}

输出


相关文章