2015-02-11 3 views
0

В моем коде я открыть браузер следующим образом: -Как закрыть браузер с 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();"

ответ

0

Попробуйте дать этот выстрел:

page.execute_script "window.close();" 
+0

этот din произведение Matt. Страница все еще остается открытой. – Anusha

+0

Было ли предупреждение после выполнения этого сценария? Если это так, добавление этого должно подтвердить предупреждение, которое должно привести к закрытию окна: "page.driver.browser.switch_to.alert.accept" – Matt

+0

Не было предупреждения. Пробовал все еще, но не повезло. Страница остается открытой. – Anusha

0

попробовать некоторые из этих

page.driver.browser.close 

или

window = page.current_window 
window.close 

Имейте в виду, что если у вас нет других окон в переключиться на, ошибка будет поднята

2

Если вы используете только селен, то следующее должно работать:

page.driver.quit 

Однако, если вы хотите, чтобы переключаться между различными webdrivers, то вы можете добавить условие или два. Это то, что я использую:

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

: WebKit относится к обезглавленной Капибаре-WebKit и: соус относится к соусу Labs, но вы можете использовать этот код для какого webdrivers вы хотите использовать.

Надеюсь, что это поможет!

+0

также работает с полтергейстом – Jeremiah

Смежные вопросы