无法tp切换窗口中第三个子iframe的上下文

时间:2013-08-01 06:30:30

标签: java selenium webdriver selenium-webdriver

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

iframes

我可以切换到FWin0Content0框架并在屏幕上设置/获取值,但无法将上下文切换为content iframe。我尝试了所有可能的选择。

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

1 个答案:

答案 0 :(得分: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);