问题提出:
在 IE8中:例如有多个case运行,
第一次一旦登陆成功之后,
其他几个错误验证的case,去执行访问同一个页面的话,但是cookie中已经记录了成功登录,所以那几个错误验证的case是跑不通的。
但是,如果在订单提交case的时候,又需要用到用户正确登录的cookie,目的不用登录就直接提交订单了。为了屏蔽ie缓存cookie的影响,可以通过以下方式实现:
总体思路的话是:
开启InPrivate阻止IE浏览器存储会话的数据,Cookie、Internet临时文件、历史记录等等。
1.1启动driver前添加ie属性配置:
以下两个属性同时开启
DesiredCapabilities caps =DesiredCapabilities.internetExplorer();
caps.setCapability(InternetExplorerDriver.IE_SWITCHES,"-private");
caps.setCapability(InternetExplorerDriver.FORCE_CREATE_PROCESS,true);
this.driver = newInternetExplorerDriver(caps);
1.2同时再修改ie注册表:
在HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main添加一项: