0

我的窗口有三个 iframe,我可以切换到层次结构中的前两个框架​​并执行操作,但无法将上下文切换到第三个框架。

内嵌框架

我能够切换到框架FWin0Content0设置/获取屏幕中的值,但无法将上下文切换到contentiframe。我尝试了所有可能的选择。

driver.switchTo().frame("FWin0"); - Works fine
driver.switchTo().frame("Content0"); - Works fine
     driver.switchTo().frame("contnet"); - Fails, I tried integer options too
4

1 回答 1

2

请提供有关您认为它失败的原因的信息?

同时,试试这个:

driver.switchTo().defaultContent(); // switch out of all frames

List<WebElement> frames = driver.findElements(By.cssSelector("iframe"));
// print out the frames.size()

driver.switchTo().frame("FWin0");
driver.switchTo().frame("Content0");
frames = driver.findElements(By.cssSelector("iframe"));
// print out the frames.size() again

// find frame element and switch to
WebElement contentFrame = driver.findElement(By.cssSelector("#content"));
// alternative css locator: By.cssSelector("iframe[id='content']")
// alternative css locator: By.cssSelector("iframe[name='content']")
// alternative css locator: By.cssSelector("iframe[src*='customSearch']")
// alternative xpath locator: By.xpath("//iframe[contains(@src, 'customSearch')]")
driver.switchTo().frame(contentFrame);
于 2013-08-01T07:19:03.377 回答