Web 测试中我们经常会接触到Cookies,一个Cookies主要属性有”所在域、name、value、有效日期和路径",下面来讲一下怎么操作Cookies。

  1. import java.util.Set;
  2. import org.openqa.selenium.Cookie;
  3. import org.openqa.selenium.WebDriver;
  4. import org.openqa.selenium.firefox.FirefoxDriver;
  5. public class CookiesStudy {
  6. /**
  7. * @author  gongjf
  8. */
  9. public static void main(String[] args) {
  10. // TODO Auto-generated method stub
  11. System.setProperty("webdriver.firefox.bin","D:\\Program Files\\Mozilla Firefox\\firefox.exe");
  12. WebDriver dr = new FirefoxDriver();
  13. dr.get("http://www.51.com");
  14. //增加一个name = "name",value="value"的cookie
  15. Cookie cookie = new Cookie("name", "value");
  16. dr.manage().addCookie(cookie);
  17. //得到当前页面下所有的cookies,并且输出它们的所在域、name、value、有效日期和路径
  18. Set<Cookie> cookies = dr.manage().getCookies();
  19. System.out.println(String.format("Domain -> name -> value -> expiry -> path"));
  20. for(Cookie c : cookies)
  21. System.out.println(String.format("%s -> %s -> %s -> %s -> %s",
  22. c.getDomain(), c.getName(), c.getValue(),c.getExpiry(),c.getPath()));
  23. //删除cookie有三种方法
  24. //第一种通过cookie的name
  25. dr.manage().deleteCookieNamed("CookieName");
  26. //第二种通过Cookie对象
  27. dr.manage().deleteCookie(cookie);
  28. //第三种全部删除
  29. dr.manage().deleteAllCookies();
  30. }

上面的代码首先在页面中增加了一个cookie,然后遍历页面的所有cookies,并输出他们的主要属性。最后就是三种删除cookie的方法。遍历cookies输出的结果:

  1. Domain -> name -> value -> expiry -> path
  2. .51.com -> FO_RFLP -> %7CaHR0cDovL3d3dy41MS5jb20v%7C%7C%7C -> null -> /
  3. .51.com -> __utmz -> 67913429.1331544776.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none) -> Tue Sep 11 05:32:56 CST 2012 -> /
  4. www.51.com -> name -> value -> Tue Mar 12 17:33:00 CST 2030 -> /
  5. www.51.com -> PHPSESSID -> 51d37fc72eb0ea66e4ef1971b688698b -> null -> /
  6. .51.com -> __utma -> 67913429.453585250.1331544776.1331544776.1331544776.1 -> Wed Mar 12 17:32:56 CST 2014 -> /
  7. www.51.com -> www_cookie_adv -> 1 -> Mon Mar 12 18:32:55 CST 2012 -> /
  8. .51.com -> __utmc -> 67913429 -> null -> /
  9. www.51.com -> NSC_xxx -> 44595a553660 -> null -> /
  10. .51.com -> __utmb -> 67913429.1.10.1331544776 -> Mon Mar 12 18:02:56 CST 2012 -> /
  11. www.51.com -> www_jiaoyou_guide -> 0c83c0b5f569512d5a832bf0b4397a05 -> null -> /

最新文章

  1. PHP设计模式笔记
  2. BZOJ 2002 &amp;&amp; BZOJ 2409 LCT &amp;&amp; BZOJ 3282 初步练习
  3. 用python+selenium获取北上广深成五地PM2.5数据信息并按空气质量排序
  4. POJ3308 Paratroopers(最小割/二分图最小点权覆盖)
  5. ETL的数据来源,处理,保存
  6. iOS-UICollectionView的简单使用(原创)
  7. NOIP1998 拼数
  8. FreeBSD下查看各软件版本命令
  9. iOS获取设备型号
  10. 解决wix生成的msi的license对话框空白的问题
  11. cygwin编译SDL1.2
  12. PHP和JAVASCRIPT判断访客终端是电脑还是手机
  13. 使用Node.js实现简易MVC框架
  14. SpringBoot初识(一)
  15. 正确理解Mysql的列索引和多列索引
  16. 仿知乎app登录界面(Material Design设计框架拿来就用的TexnInputLayout)
  17. 清晰讲解SQL语句中的内连接,通用于Mysql和Oracle,全是干货哦
  18. Hbase_02、Hbase的常用的shell命令&amp;Hbase的DDL操作&amp;Hbase的DML操作(转)
  19. 快速做ssh免密钥登陆
  20. $Django importlib与dir知识,手写配置文件, 配置查找顺序 drf分页器&amp;drf版本控制

热门文章

  1. Leetcode77. Combinations组合
  2. 100个常用的原生JavaScript函数
  3. scala的插值器
  4. Vue--过渡动画实现的三种方式
  5. Vue--系统指令(基础)
  6. Python高级核心技术97讲 系列教程
  7. JDBC的事务处理 JDBC事务处理 JDBC教程
  8. 阿里云发布SaaS生态战略,成就亿级营收独角兽
  9. P1127
  10. 人物-旅行-潘德明-Info:《近代中国徒步环游世界第一人:潘德明 》