无法找到弹出窗口

时间:2011-01-11 15:01:33

标签: selenium

我遇到了在某些selenium测试代码中找到弹出窗口的问题。我正在看测试运行器上的屏幕,有两个IE窗口,其中一个是弹出窗口,其中一个是生成弹出窗口的页面。但是用

选择那个窗口
SelectWindow("name=SomeName")

失败。在那里设置一个断点并运行一些诊断程序显示

GetAllWindowNames()

只返回一个窗口。很奇怪。我已经在IE,Chrome和firefox中重复了这个问题所以我认为它不是特定于浏览器的。我正在使用C#来推动我的测试。知道如何解决这个问题吗?

修改

我更多地看一下这个页面是如何通过将window.open添加到其代码中来重新加载自身来实际创建其弹出窗口的。打开弹出窗口是一种奇怪的方式,但我没有看到任何无效的原因。

2 个答案:

答案 0 :(得分:0)

弹出窗口的源代码中是否有标题或其他属性?您可以使用您在那里找到的任何信息找到它。尝试在Se IDE中记录打开的弹出窗口,然后单击该弹出窗口中的某些内容。通常这个技巧有效。

答案 1 :(得分:0)

IIRC,在某些情况下,SElenium无法注册窗口。在这种情况下,您可以使用openWindow('',)注册窗口。我认为这在Selenijum IDE中对openWindow的解释中有描述......