如何用capybara关闭浏览器?

时间:2015-02-11 21:45:51

标签: capybara

在我的代码中,我打开浏览器如下: -

Capybara.current_driver = :selenium
include Capybara::DSL
describe 'Auro' do
specify "OMX Manual Order" do
visit 'https://omx.ordermotion.com/en/console.asp'
end

如何关闭此浏览器?

尝试过,但没有运气: -

  1. Capybara.current_session.driver.reset!

  2. page.execute_script" window.close();"

3 个答案:

答案 0 :(得分:2)

如果您只使用硒,那么以下内容应该有效:

page.driver.quit

但是,如果您想要在不同的网络驱动程序之间切换,那么您可能需要添加一个或两个条件。这就是我使用的:

page.driver.quit unless (Capybara.current_driver == :webkit || Capybara.current_driver == :sauce)

:webkit指的是无头的capybara-webkit和:sauce指的是Sauce Labs,但是您可以将该代码用于您想要使用的任何网络驱动程序。

希望有所帮助!

答案 1 :(得分:1)

尝试其中一些

page.driver.browser.close

window = page.current_window
window.close

请记住,如果您没有其他窗口可以切换到,则会出现错误

答案 2 :(得分:0)

试着试一试:

page.execute_script "window.close();"