19. Multi-Tab & Multi-Window Switching via Window Handles

Window Handle Management

String parentWindow = driver.getWindowHandle();

// Click button that opens child tab:
driver.findElement(By.id("open-tab-btn")).click();

// Switch to new tab:
Set<String> allWindows = driver.getWindowHandles();
for (String handle : allWindows) {
if (!handle.equals(parentWindow)) {
driver.switchTo().window(handle);
break;
}
}

// Perform actions in child tab, then close and return:
driver.close();
driver.switchTo().window(parentWindow);

Task

  • Implement switchToChildWindow:
  • 1. Accept WebDriver driver and String parentHandle.
  • 2. Iterate through driver.getWindowHandles() and switch to any handle != parentHandle.
  • 3. Return true if switched, otherwise false.
πŸ’‘Common doubts
Did you like the problem?
Lesson 19 of 44
Java
Loading code editor…
Next