Selenium webdriver 无法在帧之间切换

Selenium webdriver 无法在帧之间切换,selenium-webdriver,Selenium Webdriver,我正在使用以下代码: WebDriver driver = new FirefoxDriver(); driver.get("http://seleniumhq.github.io/selenium/docs/api/java/index"); driver.switchTo().frame("classFrame"); driver.findElement(By.linkText("com.thoughtworks.selenium")).click();

我正在使用以下代码:

    WebDriver driver = new FirefoxDriver();

    driver.get("http://seleniumhq.github.io/selenium/docs/api/java/index");
    driver.switchTo().frame("classFrame");
    driver.findElement(By.linkText("com.thoughtworks.selenium")).click();
    System.out.println("The expected link is opened in the browser...");

    driver.switchTo().frame(driver.findElement(By.name("packageListFrame")));
    driver.findElement(By.linkText("com.thoughtworks.selenium")).click();
    System.out.println("The expected link is opened in the browser...");
但是,我得到的错误是,我试图切换到的第二帧找不到。。当框架名称存在时。有人指出我做错了什么吗


提前感谢

因此,现在您已经在第一帧中,现在您的web驱动程序将尝试在该帧中搜索下一帧。您需要切换到默认内容。使用`driver.switchTo().defaultContent()':

    WebDriver driver= new FirefoxDriver();

    driver.get("http://seleniumhq.github.io/selenium/docs/api/java/index");
    driver.switchTo().frame("classFrame");
    driver.findElement(By.linkText("com.thoughtworks.selenium")).click();
    System.out.println("The expected link is opened in the browser...");

    driver.switchTo().defaultContent();

    driver.switchTo().frame("packageListFrame");
    driver.findElement(By.linkText("com.thoughtworks.selenium")).click();
    System.out.println("The expected link is opened in the browser...");