【问题标题】:Handle dropdown on Webpage Dialog window using Selenium Webdriver and Java使用 Selenium Webdriver 和 Java 处理网页对话框窗口上的下拉菜单
【发布时间】:2020-05-31 03:50:17
【问题描述】:

我正在使用 Selenium WebDriver 和 Java 对网站进行自动化处理,但我陷入了这样一种情况,即在按钮上单击一个新的 网页对话框 打开并在该网页对话框上我已经执行输入值/从下拉菜单中选择等操作。

问题是我无法切换到该网页对话框,甚至 F12 窗口也无法在该网页对话框上运行。该网站仅适用于 IE。请帮帮我。

    driver.findElement(By.id("buttonOK")).click(); //operation on main browser
    Thread.sleep(3000);
    driver.switchTo().activeElement();  // This didn't switch to webpage dialog

     for(String winHandle : driver.getWindowHandles()){  // this code also didn't switchTo webpage dialog
            driver.switchTo().window(winHandle);
        }

    driver.findElement(By.name("textDataValue")).sendKeys("test"); //operation on webpage dialog

截图:enter image description here

【问题讨论】:

    标签: javascript java selenium selenium-webdriver


    【解决方案1】:

    我认为当前的 for 循环代码只是在所有打开的窗口之间切换,但您想切换到特定的打开窗口。

    我建议每次循环迭代都查找第一个 By.tagName("title") 元素并提取标题元素的文本。这应该与窗口顶部栏中的文本相对应。
    然后,对于您切换到的每个窗口,将获取的“标题”文本与您知道的对话框窗口顶部栏中的文本(“添加/修改地址 - 网页对话框”)进行比较。如果它们匹配,那么您可以跳出 for 循环,并希望 Selenium 将专注于该对话框窗口。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-03
      • 1970-01-01
      • 2019-06-05
      • 2018-08-28
      • 1970-01-01
      • 1970-01-01
      • 2014-03-27
      • 1970-01-01
      相关资源
      最近更新 更多