我在Chrome中打开一个网站,但在此之前我每次运行都会获得chrome设置窗口。我想切换到新窗口并关闭上一个。我尝试过driver.close()和driver.quit()但整个窗口都关闭了。
1)如何找出哪一个作为子窗口,哪一个作为父窗口? 2)如何以“铬设置”关闭窗口? 以下是我正在使用的代码:
System.setProperty(“webdriver.chrome.driver”,“.// chromedriver.exe”);
WebDriver driver = new ChromeDriver();
driver.get("http://demoqa.com/");
Thread.sleep(2000);
//windows maximize
driver.manage().window().maximize();
String winHandleBefore = driver.getWindowHandle();
// Switch to new window opened
for(String winHandle : driver.getWindowHandles()){
driver.switchTo().window(winHandle);
}
driver.switchTo().window(winHandleBefore);
答案 0 :(得分:1)
想法是获取当前窗口id(父级)并获取包括当前窗口在内的所有窗口的id。然后逐个切换到所有可用窗口并检查它是否是父窗口然后关闭它。
假设您现在打开了两个标签,并且您位于第一个标签页(父标签)中。在这种情况下,它将是安全选项卡。
application/x-www-form-urlencoded
注意:由于在这种情况下我们只有两个标签,这个解决方案可能不是最好的,但这应该有效。感谢。