String your_title = "This is the Title";
String currentWindow = driver.getWindowHandle(); //will keep current window to switch back
for(String winHandle : driver.getWindowHandles()){
if (driver.switchTo().window(winHandle).getTitle().equals(your_title)) {
//This is the one you're looking for
break;
}
else {
driver.switchTo().window(currentWindow);
}
}
driver.get("http://www.seleniumhq.com");
// for understanding point please open a new tab
driver.findElement(By.tagName("body")).sendKeys(Keys.CONTROL + "t");
// note new tab title will be blank as we have not opened anything in it.
// Store the current window handle- the parent one
String winHandleBefore = driver.getWindowHandle();
// store all the windows
Set<String> handle= driver.getWindowHandles();
// iterate over window handles
for(String mywindows : handle){
// store window title
String myTitle = driver.switchTo().window(mywindows).getTitle();
// now apply the condition - moving to the window with blank title
if(myTitle.equals("")){
// perform some action - as here m openning a new url
driver.get("http://docs.seleniumhq.org/download/");
}else{
driver.switchTo().window(winHandleBefore);
}
}
5条答案
按热度按时间kknvjkwl1#
你可以的。
yzxexxkh2#
如果您有想要切换焦点的窗口的确切标题(即窗口顶层
<title>
标记的确切内容),那么您可以简单地执行以下操作:如果您只有想要切换焦点的窗口的部分标题,那么您应该按照其他答案的建议,通过句柄迭代可用窗口。
z0qdvdin3#
引用:在找不到带有标题的窗口时切换回父窗口的代码.
引用:在找不到具有该标题的窗口时获取原始窗口句柄的代码。
尝试根据窗口标题切换的代码。
bihw5rsg4#
你好,你可以尝试像下面
希望这对你要找的东西有帮助。
mzsu5hc05#
如果你正在使用xpath表达式,如下所示:
click()
方法打开一个窗口,你可以切换到带有页面标题的新窗口,标题出现在页眉中,如下所示:在这种情况下,您可以使用以下命令切换到此窗口: