我發現一個代碼:page.driver.browser.switch_to.window
,這顯然是切換到已經打開的窗口。我們如何使用page.driver.browser對象打開一個新窗口?如何用Selenium webdriver在水豚中打開一個新窗口?
感謝
我發現一個代碼:page.driver.browser.switch_to.window
,這顯然是切換到已經打開的窗口。我們如何使用page.driver.browser對象打開一個新窗口?如何用Selenium webdriver在水豚中打開一個新窗口?
感謝
我結束了使用JavaScript來做到這一點:
When /^I open a new window for "([^"]*)"$/ do |url|
str =
<<END_TAG
window.open("#{url}", "window_name", "height=800,width=1000");
END_TAG
page.execute_script(str)
end
我在這裏結束了,哪怕是一個古老的線程,可能是有用的人,你可以創建並使用Windows一樣這樣的:
new_window = open_new_window
switch_to_window new_window
或:
within_window new_window do
end
你也可以通過windows對象找到新窗口。
open_new_window
new_window = windows.last
參考文獻:
http://www.rubydoc.info/github/jnicklas/capybara/Capybara/Session:open_new_window
http://www.rubydoc.info/github/jnicklas/capybara/Capybara%2FSession%3Aswitch_to_window
https://github.com/teamcapybara/capybara#working-with-windows
With Capybara, how do I switch to the new window for links with "_blank" targets?