org.openqa.selenium.NoSuchWindowException: Window not found. The browser window may have been closed while closing the window through driver i.e driver.close()
The driver has been switched to a non existent window or the window has already been closed.
String subWindowHandler = null;
Set<String> handles = driver.getWindowHandles();
Iterator<String> iterator = handles.iterator();
subWindowHandler = iterator.next();
driver.switchTo().window(subWindowHandler); // switch to the child window
driver.findElement(By.id("closeChildWindowButton")).click(); // You already closed the child window
driver.close(); // this will throw the exception as the child window has already been closed in the previous code.
Identify which window is driver currently pointing to and make sure that its open and active.