java - Selenium WebDriver 代码无法跟踪窗口中没有标题或 URL 的元素

标签 java selenium-webdriver

我正在一个页面上。单击链接后,将打开一个新窗口。该窗口没有任何 URL 或标题。因此,在切换到新窗口时,在我检查元素、&、创建 Xpath 之后,Selenium 代码无法专注于新窗口,并且此后不会执行任何操作。您能解决我的疑问吗?

注意:在我检查后,控制台窗口标题显示父窗口的 URL。

最佳答案

您可以在已打开的不同打开窗口之间切换:

String storeCurrentWindowHandler = driver.getWindowHandle();

然后执行打开新窗口的点击操作

切换到已打开的新窗口

    for(String winHandle : driver.getWindowHandles()){
        driver.switchTo().window(winHandle);
    }

在选定的窗口内执行测试所需的任何操作

如果不再需要,则关闭新窗口

driver.close();

并切换回第一个打开的窗口

driver.switchTo().window(storeCurrentWindowHandler);

希望这能帮助您解决问题。

关于java - Selenium WebDriver 代码无法跟踪窗口中没有标题或 URL 的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58914931/

相关文章:

java - Eclipse MessageConsole : cannot generate clickable link as (Filename. java:LineNumber)

selenium - 这是 WebDriver 服务器的初始启动页面

java - 属性的级别值错误,无法为 java.util.logging.FileHandler 设置级别

java - HTTP 状态 500 - 在第 9 行处理 JSP page/index.jsp 时发生异常

java - 使用 cssSelector 或 xPath Selenium Web 驱动程序在过滤器上应用按钮?

java - Selenium implicitlyWait 不工作?

android - 如何使用 webdriver 处理 appium 中的弹出窗口

java - Selenium (Java) - 根据其他属性获取列表 id

java - 检查 ArrayList 是否包含来自另一个 ArrayList 的所有元素

java - 创建 bean 'entityManagerFactory' 时出错,嵌套的 HibernateException : Unable to get the default Bean Validation factory