6

我在selenium webdriver默认情况下使用 capybara 2.1.0minitesttest::unit,对于一些需要访问该.hover方法的测试,我使用的是 Chrome webdriver

在几乎所有需要 chrome 的测试结束时,我都有一个空白的 chrome 窗口,我必须手动关闭它才能结束我的测试。

这是我的测试助手的一部分:

def use_chrome_driver
  Capybara.register_driver :selenium_chrome do |app|
    Capybara::Selenium::Driver.new(app, :browser => :chrome)
  end
  Capybara.current_driver = :selenium_chrome
end

def setup
  DatabaseCleaner.start
  Capybara.current_driver = :selenium
end

def teardown
  Capybara.reset_session!
  Capybara.use_default_driver
  DatabaseCleaner.clean
end

setup 方法use_chrome_driver在 chrome 测试开始时被调用覆盖。IE :

def test_example
  use_chrome_driver
  ...
end

test_example如果我不手动关闭打开的 Chrome 浏览器,这将永远不会退出。当我手动退出他时,测试完成并通过,没有错误。

那么为什么这个 Chrome 浏览器窗口不会每次都自动关闭呢?(有时它会自动关闭〜15%!)

4

1 回答 1

2

这似乎是最近的问题:https ://github.com/jnicklas/capybara/issues/1035#issuecomment-24301966

于 2013-09-24T06:24:43.707 回答