如何将焦点更改为Selenium中的新弹出选项卡?

21 selenium

我正在使用Selenium和Firefox.

我在页面上有一个链接(比如linkA),它在新标签页中打开一个新页面.单击linkA时会显示新选项卡.然后我想与新页面进行交互.

这是我的selenium脚本:

  • 点击链接A.
  • 暂停5000
  • selectWindow标题
  • 单击linkB(注意:linkB在新页面上)

Selenium无法识别新标签.它报告:

[warn] Link的目标是'_blank',Selenium不支持!将目标随机化为:selenium_blank24003

有没有办法告诉Selenium与显示的标签进行交互?

s_h*_*itt 4

您是否尝试在 selectWindow 和单击 linkB 之间添加 windowFocus?

编辑:selectWindow 采用 Javascript windowID。你的linkA是否指定了一个windowID供Selenium访问?

这是完整的第一个测试页面(t1.html),在 window.open 调用中,第二个参数是“WindowTest”,这是 selenium 查找的 javascript windowID。

<a href="javascript:void(0);" name="t1" 
   onclick="window.open('t2.html', 'WindowTest', 'width=450,height=600');">
 test
</a>
Run Code Online (Sandbox Code Playgroud)

这是第二个测试页面(t2.html):

<a href="t1.html" name="t2">2test2</a>
Run Code Online (Sandbox Code Playgroud)

运行脚本最终会在 t1.html 我的脚本上弹出窗口

click              link=test
pause              5000
selectWindow       WindowTest
windowFocus
click              link=2test2
Run Code Online (Sandbox Code Playgroud)