Java 如何在Selenium中处理弹出式IFrame窗口
我是新来的。 我正在尝试处理弹出窗体 当我点击“新建”按钮时,像这样的弹出式窗体将打开 我尝试通过alert()、弹出窗口处理以及子浏览器处理来处理此问题。但是没有得到解决方案。 请对此问题提出一些解决方案如果它是一个元素,那么您需要将WebDriver切换到此框架以使用它。下面是一个如何做到这一点的示例:Java 如何在Selenium中处理弹出式IFrame窗口,java,selenium,frame,Java,Selenium,Frame,我是新来的。 我正在尝试处理弹出窗体 当我点击“新建”按钮时,像这样的弹出式窗体将打开 我尝试通过alert()、弹出窗口处理以及子浏览器处理来处理此问题。但是没有得到解决方案。 请对此问题提出一些解决方案如果它是一个元素,那么您需要将WebDriver切换到此框架以使用它。下面是一个如何做到这一点的示例: By locIframe = By.xpath("//iframe[@name='popup']"); driver.switchTo().frame(driver.findElement
By locIframe = By.xpath("//iframe[@name='popup']");
driver.switchTo().frame(driver.findElement(locIframe));
// driver is an instance of RemoteWebDriver
Xpath定位器只是一个例子:您需要在这里编写自己的定位器。您还可以使用任何其他定位器在页面源中查找该元素
切换到iframe元素后,WebDriver将看到它的页面源并能够使用它。如果它是一个元素,那么您需要将WebDriver切换到此框架才能使用它。下面是一个如何做到这一点的示例:
By locIframe = By.xpath("//iframe[@name='popup']");
driver.switchTo().frame(driver.findElement(locIframe));
// driver is an instance of RemoteWebDriver
Xpath定位器只是一个例子:您需要在这里编写自己的定位器。您还可以使用任何其他定位器在页面源中查找该元素
切换到iframe元素后,WebDriver将看到它的页面源代码,并能够使用它。我也面临类似的问题。单击父窗口中的
EDIT
按钮时,会出现一个iFrame弹出窗口,如下所示:`
如前所述,您尝试使用alert()或弹出处理以及子浏览器处理进行处理。但是,由于它是一个iFrame弹出窗口,所以它们都不起作用。因此,您需要将WebDriver切换到此框架才能使用它。
对于我的案例,我使用了以下代码:
driver.switchTo().frame(3)代码>
要找到框架的索引,可以使用Selenium IDE。我也面临类似的问题。单击父窗口中的EDIT
按钮时,会出现一个iFrame弹出窗口,如下所示:`
如前所述,您尝试使用alert()或弹出处理以及子浏览器处理进行处理。但是,由于它是一个iFrame弹出窗口,所以它们都不起作用。因此,您需要将WebDriver切换到此框架才能使用它。
对于我的案例,我使用了以下代码:
driver.switchTo().frame(3)代码>
要查找框架的索引,可以使用Selenium IDE。此弹出窗口是iframe元素吗?是,它被视为框架。当我在一个新标签中打开它时,它会被看作一个网页。有这样的URL:www.abc.com/Detail.aspx?type=1这个弹出窗口是一个iframe元素吗?是的,它被视为一个框架。当我在一个新标签中打开它时,它会被看作一个网页。有这样的URL:www.abc.com/Detail.aspx?type=1