如何验证selenium webdriver中是否打开了新标签?

OPT*_*MUS 8 selenium

我有一种情况,我必须检查点击链接后是否打开新选项卡.如果选项卡打开,我也想检查标题.

有没有人对此有任何想法.

小智 16

C#也是如此; 这是经过测试的,无论链接是在新标签页还是新窗口中打开,都可以使用.

var browserTabs = driver.WindowHandles;            
driver.SwitchTo().Window(browserTabs[1]);

//check is it correct page opened or not (e.g. check page's title or url, etc.)
// ...
//close tab and get back
driver.Close();
driver.SwitchTo().Window(browserTabs[0]);
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助任何遇到这个帖子的人.


小智 6

尝试切换到新选项卡,然后验证其是否正确。

在Java中,它可能类似于:

//get window handlers as list
List<String> browserTabs = new ArrayList<String> (driver.getWindowHandles());
//switch to new tab
driver.switchTo().window(browserTabs .get(1));
//check is it correct page opened or not (e.g. check page's title)
//...
//then close tab and get back
driver.close();
driver.switchTo().window(browserTabs.get(0))
Run Code Online (Sandbox Code Playgroud)