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
The flaw with the selected answer is that it unnecessarily assumes order in webDriver.getWindowHandles()
. The getWindowHandles()
method returns a Set
, which does not guarantee order.
I used the following code to change tabs, which does not assume any ordering.
String currentTabHandle = driver.getWindowHandle();
String newTabHandle = driver.getWindowHandles()
.stream()
.filter(handle -> !handle.equals(currentTabHandle ))
.findFirst()
.get();
driver.switchTo().window(newTabHandle);