2

为了让我的测试运行得更快,我决定只打开和关闭一次浏览器。在场景之间清除 cookie。

Alister Scott 在这里描述了它http://watirmelon.com/2012/04/01/five-page-object-anti-patterns/

钩子.rb:

browser = Watir::Browser.new :firefox

Before do
  @browser = browser
end

at_exit do
  browser.close
end

After do
  @browser.cookies.clear
end

但问题是一些测试检查重定向到anothersite.com,所以@browser.cookies.clear只为anothersite.com. 如何在不关闭浏览器的情况下真正清除所有cookie?

这时候我暂时(我希望如此)添加

After('@sometag') do
  @browser.goto 'mysite.com'
  @browser.cookies.clear
end
4

1 回答 1

0

尝试清除主浏览器对象上的 cookie,而不是您正在使用的它的副本。就这样@browser.cookies.clear变成了browser.cookies.clear。我有一种感觉,可以解决你的问题。

于 2013-09-23T11:04:21.077 回答