watir webdriver:如何切换到另一个打开目标的窗口

时间:2013-03-05 20:12:43

标签: webdriver watir watir-webdriver

我正在使用watir-webdriver,当点击带有target =“_ blank”的链接时,它会打开一个我无法控制的新窗口,但仍需要验证404页面以外的其他内容,并且如果该新窗口的标题包含一些关键字。我不知道该窗口的标题是什么(它一直不一样),所以this solution没有帮助。

有没有任何已知方法如何通过watir-webdriver处理这些target =“_ blank”窗口?

2 个答案:

答案 0 :(得分:15)

由于您知道新窗口的标题应该具有某些形式,您应该能够使用正则表达式(正则表达式用“/”)表示,通过其标题找到它。

browser.window(:title => /known part of title/).use do
  #Whatever you want to do with the popup
end

或者,如果您对弹出窗口一无所知,可以创建最后一个窗口:

browser.windows.last.use do
  #Whatever you want to do with the popup
end

答案 1 :(得分:7)

window switching spec上有关于watir-webdriver http://watirwebdriver.com/browser-popups/的链接。您应该可以通过:title:url:index找到该窗口。规范中的示例:

browser.window(:index => 1).use
browser.window(:url => /closeable\.html/).use
browser.window(:title => "closeable window").use