Closing all opened tabs except the first tab/main tab using webdriver

0
0

Can anyone tell me how to close all opened tabs except the first tab/main tab using webdriver?

I tried below, but it is closing all tabs including first tab as well.

public static void closeTabs() {
String wh1=driver.getWindowHandle();
String cwh=null;
while(wh1!=cwh)
{
new Actions(driver).sendKeys(Keys.CONTROL).sendKeys(Keys.NUMPAD1).perform();
driver
.findElement(By.tagName("body")).sendKeys(Keys.CONTROL, Keys.TAB);
cwh
=driver.getWindowHandle();
driver
.findElement(By.tagName("body")).sendKeys(Keys.CONTROL+"w");
}
}

Please help me.

  • You must to post comments
0
0

Get all the window handles then iterate through them, switching webdriver to the new handle, then calling the close method. Obviously skip this for the original handle, then switch back to the remaining handle.

Something like;

    String originalHandle = driver.getWindowHandle();
//Do something to open new tabs
for(String handle : driver.getWindowHandles()) {
if (!handle.equals(originalHandle)) {
driver
.switchTo().window(handle);
driver
.close();
}
}
driver
.switchTo().window(originalHandle);
  • You must to post comments
Showing 1 result
Your Answer
Post as a guest by filling out the fields below or if you already have an account.
Name*
E-mail*
Website