我正在为Cucumber Scenario编写一个步骤定义,在When子句中我点击了一个为facebook共享带来弹出窗口的按钮。
驱动程序会自动关注弹出窗口吗?
或者我必须通过代码访问它。
我想验证弹出窗口的url,以检查Then子句中是否正确。
答案 0 :(得分:1)
一旦有弹出窗口,驱动程序就不会自动关注弹出窗口。您需要通过代码处理它。
以下是我处理弹出窗口的方法。
String parentWindowHandler = driver.getWindowHandle(); // Store your parent window
String subWindowHandler = null;
Set<String> handles = driver.getWindowHandles(); // get all window handles
Iterator<String> iterator = handles.iterator();
while (iterator.hasNext()){
subWindowHandler = iterator.next();
}
driver.switchTo().window(subWindowHandler); // switch to popup window
// perform operations on popup
driver.switchTo().window(parentWindowHandler); // switch back to parent window