我正在为 Cucumber Scenario 编写一个 stepdefinition,在 When 子句中我单击一个按钮,该按钮会为 Facebook 共享带来一个弹出窗口。
驱动程序会自动聚焦在弹出窗口上吗?
或者我将不得不通过代码访问它。
我想验证弹出窗口的 url 以检查其在 Then 子句中是否正确。
一旦有弹出窗口,驱动程序将不会自动关注弹出窗口。您需要通过代码处理它。
这是我将如何处理弹出窗口。
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