我使用Selenium WebDriver.我打开第一页然后打开第二页 – 执行一些操作并返回到第一页.在我想要关闭第二页之前,我使用命令driver.close();但它关闭第一页而不是第二页.如何使Selenium关闭特定窗口?
部分代码
String HandleBefore = driver.getWindowHandle(); driver.findElement(By.xpath("...")).click(); for (String twohandle : driver.getWindowHandles()) { driver.switchTo().window(twohandle); } driver.findElement(By.linkText("001")).click(); driver.close();
解决方法
String base = driver.getWindowHandle(); Set <String> set = driver.getWindowHandles(); set.remove(base); assert set.size()==1; driver.switchTo().window(set.toArray(new String[0])); driver.close(); driver.switchTo().window(base);
这对我有用