我正在使用 Selenium Webdriver (Java) 和 PhantomJS 来测试一个复杂的 JS 驱动的网站。我的问题是,PhantomJS 浏览器会在两个测试之间保持会话,这会导致测试设置出错。
如果我使用 Firefox 运行测试,一切正常,因为 Firefox 对每个测试用例都使用干净的会话。
我第一次尝试解决这个问题是通过 JS 注入清除本地存储。cookie 被 Selenium 删除API driver.manage().deleteAllCookies();
但是不允许在不访问页面的情况下执行 JavaScript。所以在“about:blank”启动浏览器会导致错误。
那么,如何配置我的 phantomjs webdriver 以清除会话?
我正在使用 phantomjs 和 webdriver,因为 selenium-grid 服务不够稳定。所以我像这样启动我的 phantomjs 实例:
phantomjs --webdriver=1234