使用Selenium捕获新打开的窗口

时间:2012-08-16 05:30:57

标签: selenium

我正在使用Selenium Client驱动程序来运行用C#构建的测试。我遇到了一个问题,即测试导航到某个页面并单击表单中的按钮,其目标设置为_blank,导致它打开一个新窗口。但是,正在打开的新页面将返回XML文档,而不是典型的网页。 Selenium似乎遇到了麻烦,因为它在单击按钮并且新窗口打开时挂起。执行click方法后没有指令。测试最终失败,错误为Timed out running command

任何帮助/指导将不胜感激。我已经在网上搜索,但没有看到任何人遇到这个特定问题的页面被打开不是典型的网页,我认为这是问题的核心,因为Selenium无法真正操纵这个新打开的窗口。我会发布代码,除了字面意思我正在做的就是在按钮上调用click方法,这会导致打开一个新窗口。提前谢谢。

1 个答案:

答案 0 :(得分:1)

解决在新窗口中打开的问题。我通常得到要打开的链接的URL,而不是使用selenium.click(),我使用:

selenium.open( “HTTP:// yourwebsite / yourlink”)

这有助于我只在同一个窗口(避免打开新窗口或标签),当在此页面上完成测试并且您想切换回原始页面时,您可以再次使用:

selenium.open( “HTTP://任何/”)