为什么我在webDriver中找不到“功能”功能?

时间:2011-09-07 13:44:56

标签: java selenium webdriver

我想在webdriver下实现一个简单的waitForXX。

代码非常简单。

Function<WebDriver, WebElement> presenceOfElementLocated(final By locator) {

    return new Function<WebDriver, WebElement>() {

        public WebElement apply(WebDriver driver) {

            return driver.findElement(locator);

        }

    };

}

但它仍然给我带来麻烦,因为我似乎无法导入'功能'部分。

我看了selenium.support.ui下的所有地方,我猜它应该在哪里?但我似乎找不到它。

我尝试使用最新的Selenium独立jar文件2.5.0。

谢谢!

2 个答案:

答案 0 :(得分:2)

Function<F, t>似乎来自Guava library。你有番石榴罐子吗?

答案 1 :(得分:1)

不幸的是我不知道如何在Java中这样做,但是你看过WebDriver中的WebDriverWait类应该做你想做的事。

该类位于Java Bindings的Support部分

http://code.google.com/p/selenium/source/browse/trunk/java/client/src/org/openqa/selenium/support/ui/WebDriverWait.java

了解如何在这些测试中使用它

http://code.google.com/p/selenium/source/browse/trunk/java/client/test/org/openqa/selenium/support/ui/WebDriverWaitTest.java

或者您可以使用隐式等待

driver.manage().timeouts().implicitlyWait(3000, MILLISECONDS);
driver.findElement(By.id('foo')); //will wait 3 seconds, if not loaded will throw an exception