gpt4 book ai didi

java - 如何使用java在selenium中关闭Windows警报框后切换到主窗口

转载 作者:行者123 更新时间:2023-12-02 04:14:33 25 4
gpt4 key购买 nike

我正在使用 Selenium 3.7.1 和 firefox 最新版本 67.0.2,我实际上是在单击基于 Windows 的弹出窗口后尝试切换回我的主页(使用 AutoIT 脚本单击“确定”)。但是弹出窗口关闭后我无法切换回第一个窗口(即主页)。总共打开了两个窗口。

我使用下面的代码切换回主页而不关闭父窗口,因为我无法将控件带回父页面。最近,我们的项目进行了一次升级,之前代码运行良好。

public void switchToNewWindow(int windowNumber) {
Set<String> s = driver.getWindowHandles();
Iterator<String> ite = s.iterator();
int i = 1;
while (ite.hasNext() && i < 10) {
String popupHandle = ite.next().toString();
driver.switchTo().window(popupHandle);
System.out.println("Window title is : " + driver.getTitle());
if (i == windowNumber)
break;
i++;
}
}

我得到以下输出:

org.openqa.selenium.NoSuchWindowException: Browsing context has been discarded

最佳答案

String mainWindow = driver.getWindowHandle();

//here, your action to bring up a new window
driver.click

for (String winHandle : driver.getWindowHandles()) {
driver.switchTo().window(winHandle);
if(!winHandle.equals(mainWindow)) {
driver.close();
}
}

//switch to main window
driver.switchTo().window(mainWindow);

关于java - 如何使用java在selenium中关闭Windows警报框后切换到主窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56669220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com