硒麻烦?

时间:2015-12-02 00:50:39

标签: java selenium

我刚刚开始使用selenium,我按照here步骤开始,但是,当我运行页面上给出的示例时:

package org.openqa.selenium.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

public class Selenium2Example  {
    public static void main(String[] args) {
        // Create a new instance of the Firefox driver
        // Notice that the remainder of the code relies on the interface, 
        // not the implementation.
        WebDriver driver = new FirefoxDriver();

        // And now use this to visit Google
        driver.get("http://www.google.com");
        // Alternatively the same thing can be done like this
        // driver.navigate().to("http://www.google.com");

        // Find the text input element by its name
        WebElement element = driver.findElement(By.name("q"));

        // Enter something to search for
        element.sendKeys("Cheese!");

        // Now submit the form. WebDriver will find the form for us from the element
        element.submit();

        // Check the title of the page
        System.out.println("Page title is: " + driver.getTitle());

        // Google's search is rendered dynamically with JavaScript.
        // Wait for the page to load, timeout after 10 seconds
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
            public Boolean apply(WebDriver d) {
                return d.getTitle().toLowerCase().startsWith("cheese!");
            }
        });

        // Should see: "cheese! - Google Search"
        System.out.println("Page title is: " + driver.getTitle());

        //Close the browser
        driver.quit();
    }
}

我收到一堆编译错误。有谁知道可能会发生什么?我刚开始使用它时,我对系统不是很熟悉。我按照上面链接的页面上的所有说明进行操作,编译错误不会消失:

Selenium2Example.java:3: error: cannot find symbol
import org.openqa.selenium.By;
                          ^
  symbol:   class By
  location: package org.openqa.selenium
Selenium2Example.java:4: error: cannot find symbol
import org.openqa.selenium.WebDriver;
                          ^
  symbol:   class WebDriver
  location: package org.openqa.selenium
Selenium2Example.java:5: error: cannot find symbol
import org.openqa.selenium.WebElement;
                          ^
  symbol:   class WebElement
  location: package org.openqa.selenium
Selenium2Example.java:6: error: package org.openqa.selenium.firefox does not exist
import org.openqa.selenium.firefox.FirefoxDriver;
                                  ^
Selenium2Example.java:7: error: package org.openqa.selenium.support.ui does not exist
import org.openqa.selenium.support.ui.ExpectedCondition;
                                     ^
Selenium2Example.java:8: error: package org.openqa.selenium.support.ui does not exist
import org.openqa.selenium.support.ui.WebDriverWait;
                                     ^
Selenium2Example.java:15: error: cannot find symbol
        WebDriver driver = new FirefoxDriver();
        ^
  symbol:   class WebDriver
  location: class Selenium2Example
Selenium2Example.java:15: error: cannot find symbol
        WebDriver driver = new FirefoxDriver();
                               ^
  symbol:   class FirefoxDriver
  location: class Selenium2Example
Selenium2Example.java:23: error: cannot find symbol
        WebElement element = driver.findElement(By.name("q"));
        ^
  symbol:   class WebElement
  location: class Selenium2Example
Selenium2Example.java:23: error: cannot find symbol
        WebElement element = driver.findElement(By.name("q"));
                                                ^
  symbol:   variable By
  location: class Selenium2Example
Selenium2Example.java:36: error: cannot find symbol
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
                                                  ^
  symbol:   class ExpectedCondition
  location: class Selenium2Example
Selenium2Example.java:36: error: cannot find symbol
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
             ^
  symbol:   class WebDriverWait
  location: class Selenium2Example
12 errors

4 个答案:

答案 0 :(得分:0)

您需要将Selenium添加到类路径中,因此您要么不使用Maven进行编译,要么pom文件中存在配置错误。

答案 1 :(得分:0)

您缺少项目中的selenium jar文件。你可以从这里下载jar http://www.seleniumhq.org/download/

答案 2 :(得分:0)

如果您使用的是maven,请将selenium依赖项添加到您的POM中。如果您正在使用ant download selenium并将其添加到类路径中。如果能够看到selenium jar文件,请检查项目依赖项。侧边注意当您进入WebDriver并在IDE中按Ctrl + Space时会发生什么?你能看到intellisense弹出?如果没有,那么你还没有添加selenium jar文件。

答案 3 :(得分:0)

不确定是不是这个原因,但是检查你的类路径中是否还有hamcrest以及selenium库。