From the WebDriver FAQ: WebDriver offers the ability to handle multiple windows. This is done using the "WebDriver.switchTo (). Window ()" method to switch to a window with a known name. If the name is unknown, you can use "WebDriver.getWindowHandles ()" to get a list of known windows. You can pass the handle "switchTo (). Window ()".
Full FAQ here.
Thoughtworks
String parentWindowHandle = browser.getWindowHandle();
WebDriver popup = null;
Iterator<String> windowIterator = browser.getWindowHandles();
while(windowIterator.hasNext()) {
String windowHandle = windowIterator.next();
popup = browser.switchTo().window(windowHandle);
if (popup.getTitle().equals("Google") {
break;
}
}
, Java # ( )
String parentWindowHandle = _browser.CurrentWindowHandle;
IWebDriver popup = null;
var windowIterator = _browser.WindowHandles;
foreach (var windowHandle in windowIterator)
{
popup = _browser.SwitchTo().Window(windowHandle);
if (popup.Title == "Google")
{
break;
}
}