使用Selenium的webdriver与Java开关标签 [英] switch tabs using Selenium WebDriver with Java

查看:735
本文介绍了使用Selenium的webdriver与Java开关标签的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用webdriver的硒用JAVA,
我想一个自动化的功能,我要打开一个新标签做一些操作那里回来previous选项卡(家长)。
我用的开关手柄,但它不工作。
和一个奇怪的两个标签都具有相同的窗口句柄,由于这我不能够选项卡之间切换。

然而,当我试图用不同的Firefox窗口它的工作原理,但其标签不工作。

请帮助我,我怎么可以切换标签。
或如何可以切换标签不使用窗口句柄作为窗口句柄一样在我的情况这两个选项卡中。

(我观察到,当你打开在同一窗口中不同的标签,窗口的句柄保持不变。)


解决方案

  psdbComponent.clickDocumentLink();
    ArrayList的<串GT; TABS2 =新的ArrayList<串GT; (driver.getWindowHandles());
    。driver.switchTo()窗口(tabs2.get(1));
    driver.close();
    。driver.switchTo()窗口(tabs2.get(0));

这code完全为我工作。试试看。你总是需要你的驱动程序切换到新的标签,你想要做的新标签上的东西了。

Using Selenium WebDriver with JAVA , I am trying to automate a functionality where I have to open a new tab do some operations there and come back to previous tab (Parent). I used switch handle but its not working. And one strange thing the two tabs are having same window handle due to which i am not able to switch between tabs.

However when I am trying with different Firefox windows it works, but for tab its not working.

Please help me how can i switch tabs. OR how can I switch tabs without using window handle as window handle is same of both tabs in my case.

(I have observed that when you open different tabs in same window , window handle remains same.)

解决方案

    psdbComponent.clickDocumentLink();
    ArrayList<String> tabs2 = new ArrayList<String> (driver.getWindowHandles());
    driver.switchTo().window(tabs2.get(1));
    driver.close();
    driver.switchTo().window(tabs2.get(0));

This code perfectly worked for me. Try it out. You always need to switch your driver to new tab, before you want to do something on new tab.

这篇关于使用Selenium的webdriver与Java开关标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆