【发布时间】:2015-08-29 06:29:36
【问题描述】:
我有一个页面,我在其中单击一个链接,该链接会打开一个具有 iframe 的新模态窗口。我切换到 iframe 并执行了一些验证,然后单击该模态窗口中的链接,该链接又打开带有 iframe 的第二个新模态窗口。我在单击第二个新模态窗口中的任何元素时遇到问题。
这是我的代码。
WebElement Hotelname = driver.findElement(By.cssSelector(".hotelTitleZone2>a"));
Hotelname.click(); \\This will open a new Pop up.
driver.switchTo().frame(1);
\\perform some validation
String parentHandle = driver.getWindowHandle();
driver.findElement(By.linkText("View on a Map")).click(); \\This will open second pop up Modal window
for (String winHandle : driver.getWindowHandles()) {
driver.switchTo().window(winHandle);
}
driver.switchTo().defaultContent();
driver.switchTo().frame(1); \\switching to frame
driver.findElement(By.linkText("Close")).click();
当我运行此代码时,我收到错误:
org.openqa.selenium.NoSuchElementException:无法定位元素: {“方法”:“链接文本”,“选择器”:“关闭”}
我尝试过切换到默认内容或不切换到默认内容,没有切换到第二个模态窗口中的框架,但结果始终相同。
任何帮助表示赞赏?谢谢。
【问题讨论】:
-
如果您的问题得到解决,请将其标记为已回答,这也将有助于 Stackoverflow 社区。span>
标签: java iframe selenium-webdriver