iFrames - 无法通过Selenium定位

时间:2014-12-19 06:22:14

标签: java html selenium iframe

我已经看到很多关于切换到iframe的回复 driver.switchTo()。frame(“test frame”);和driver.switchTo()。defaultContent();

但是,我无法继续使用以下代码中的MenuFrame 4。我正在使用Java,请帮助!!!!!

2 个答案:

答案 0 :(得分:0)

在您的情况下,所有iframe都是嵌套的。因此,要进入iframe' MenuFrame 4 ',您可以使用以下代码

driver.switchTo().defaultContent();
WebDriverWait wait = new WebDriverWait(driver,10); 
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.tagName("iframe")));
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("MenuFrame0")));
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("MenuFrame1")));
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("MenuFrame2")));
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("MenuFrame4")));

答案 1 :(得分:-1)

以下选项对我有用 -

driver.switchTo()帧();然后在切换到它后,我用了 。driver.switchTo()defaultContent();在进入下一帧之前。

我花了很多时间寻找这个。希望它可以帮助其他陷入类似绝望的人。

谢谢大家。