[英]How to switch to the new browser window, which opens after click on the button?
[英]WebDriver switch to browser opened after click on button
我将Selenium Webdriver与JAVA结合使用,试图使一项功能自动化,在该功能中,我必须打开一个新选项卡以在那里进行一些操作,然后返回到上一个选项卡(父亲)。
他失去了会议和错误。
//当我单击此处时,它将打开模式
driver.findElement(By.name("btnSimulateDK")).click();
我尝试过这种方法,如果在此页面上输入登录名和密码错误,则该错误可能已经在当前会话中打开并显示我可以执行的活动。
String winHandleBefore = driver.getWindowHandle();
driver.findElement(By.name("btnSimulateDK")).click();
for(String winHandle : driver.getWindowHandles()){
if (!winHandle.equals(winHandleBefore))
driver.switchTo().window(winHandle);
if(driver.getTitle().equals("Title of target window")){
//perform operation on target window
}
}
driver.switchTo().window(winHandleBefore);
}
driver.getWindowHandles()不保证任何顺序,并且还包括当前window(父亲)。
因此,不只是切换到窗口
您需要检查winHandle不等于winHandleBefore
如果是这样,则仅执行switchTo()
另外,最好确保您进入正确的页面。
喜欢
for(String winHandle : driver.getWindowHandles()){
if (!winHandle.equals(winHandleBefore))
driver.switchTo().window(winHandle);
if(driver.getTitle().equals("Title of target window")){
//perform operation on target window
}
}
当打开其他会话时,IEDRIVER会出现问题,只需在任务管理器中将其关闭即可解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.