如何在 Selenium 中处理弹出式 IFrame Window
How to Handle Pop Up IFrame Window In Selenium
我是 Slenium 的新手。
我正在尝试处理弹出表单。
当我单击“新建”按钮时,将打开这样的弹出窗体。
我尝试通过 alert()、弹出窗口处理以及子浏览器处理来处理这个问题。但没有得到解决方案。
请针对此问题提出一些解决方案
如果它是 <iframe> 元素,那么您需要将 WebDriver 切换到此框架才能使用它。以下是如何执行此操作的示例:
By locIframe = By.xpath("//iframe[@name='popup']");
driver.switchTo().frame(driver.findElement(locIframe));
// driver is an instance of RemoteWebDriver
Xpath 定位器只是一个示例:您需要在此处编写自己的定位器。您也可以使用任何其他定位器在页面源代码中查找 <iframe> 元素。
切换到 iframe 元素后,WebDriver 将看到它的页面源代码并将能够使用它。
我也遇到了类似的问题。当单击父 window 中的 EDIT
按钮时,会出现一个 iFrame pop-up,如下所示:`
如前所述,您尝试使用 alert() 或弹出窗口处理以及子浏览器处理来处理。但是其中 none 个可以工作,因为它是一个 iFrame pop-up。所以你需要将 WebDriver 切换到这个框架才能使用它。
对于我的情况,我确实使用了以下代码:
driver.switchTo().frame(3);
要查找框架的索引,您可以使用 Selenium IDE。
我是 Slenium 的新手。
我正在尝试处理弹出表单。
当我单击“新建”按钮时,将打开这样的弹出窗体。
我尝试通过 alert()、弹出窗口处理以及子浏览器处理来处理这个问题。但没有得到解决方案。 请针对此问题提出一些解决方案
如果它是 <iframe> 元素,那么您需要将 WebDriver 切换到此框架才能使用它。以下是如何执行此操作的示例:
By locIframe = By.xpath("//iframe[@name='popup']");
driver.switchTo().frame(driver.findElement(locIframe));
// driver is an instance of RemoteWebDriver
Xpath 定位器只是一个示例:您需要在此处编写自己的定位器。您也可以使用任何其他定位器在页面源代码中查找 <iframe> 元素。
切换到 iframe 元素后,WebDriver 将看到它的页面源代码并将能够使用它。
我也遇到了类似的问题。当单击父 window 中的 EDIT
按钮时,会出现一个 iFrame pop-up,如下所示:`
如前所述,您尝试使用 alert() 或弹出窗口处理以及子浏览器处理来处理。但是其中 none 个可以工作,因为它是一个 iFrame pop-up。所以你需要将 WebDriver 切换到这个框架才能使用它。 对于我的情况,我确实使用了以下代码:
driver.switchTo().frame(3);
要查找框架的索引,您可以使用 Selenium IDE。