Почему я не могу найти функцию «Функция» в webDriver? - PullRequest
0 голосов
/ 07 сентября 2011

Я хочу реализовать простой waitForXX под webdriver.

Код довольно прост.

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

    return new Function<WebDriver, WebElement>() {

        public WebElement apply(WebDriver driver) {

            return driver.findElement(locator);

        }

    };

}

Но все же это доставляет мне проблемы, потому что я не могу импортировать часть «Функция».

Я посмотрел везде, где под selenium.support.ui, где это должно быть, я думаю? Но я не могу найти это.

Я пробовал использовать последнюю версию автономного jar-файла Selenium 2.5.0.

Спасибо!

Ответы [ 2 ]

2 голосов
/ 07 сентября 2011

Function<F, t>, похоже, из библиотеки Guava . У вас есть баночки с гуавой?

1 голос
/ 07 сентября 2011

К сожалению, я не знаю, как это сделать в Java, но вы взглянули на класс WebDriverWait в WebDriver, который должен делать то, что вы хотите.

Класс находится в части поддержки JavaПривязки

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...