在水豚测试后,Chrome驱动程序不会退出

时间:2013-09-13 12:50:22

标签: google-chrome selenium capybara

我默认使用capybara 2.1.0和selenium webdriverminitesttest::unit,对于需要访问.hover方法的某些测试,我正在使用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

在Chrome测试开始时调用的use_chrome_driver覆盖了安装方法。即:

def test_example
  use_chrome_driver
  ...
end

如果我未手动关闭已打开的Chrome浏览器,则此test_example将永不退出。当我手动退出他时,测试结束并且没有错误地通过。

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

1 个答案:

答案 0 :(得分:2)