Package org.openqa.selenium.support.ui
Class WebDriverWait
java.lang.Object
org.openqa.selenium.support.ui.WebDriverWait
- All Implemented Interfaces:
Wait<org.openqa.selenium.WebDriver>
An implementation of the Wait interface that makes use of WebDriver. The expected usage is in conjunction with the
ExpectedCondition
interface.
Because waiting for elements to appear on a page is such a common use-case, this class will silently swallow NotFoundException whilst waiting.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
WebDriverWait
(org.openqa.selenium.support.ui.Clock clock, org.openqa.selenium.WebDriver driver, long timeOutInSeconds, long sleepTimeOut) WebDriverWait
(org.openqa.selenium.WebDriver driver, long timeOutInSeconds) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
throwTimeoutException
(String message, Exception lastException) Override this method to throw an exception that is idiomatic for a given test infrastructure.<T> T
until
(com.google.common.base.Function<org.openqa.selenium.WebDriver, T> isTrue) Implementations should wait until the condition evaluates to a value that is neither null nor false.
-
Constructor Details
-
WebDriverWait
public WebDriverWait(org.openqa.selenium.WebDriver driver, long timeOutInSeconds) - Parameters:
driver
- The WebDriver instance to pass to the expected conditionstimeOutInSeconds
- The timeout in seconds when an expectation is called
-
WebDriverWait
protected WebDriverWait(org.openqa.selenium.support.ui.Clock clock, org.openqa.selenium.WebDriver driver, long timeOutInSeconds, long sleepTimeOut) - Parameters:
clock
- The clock to use when measuring the timeoutdriver
- The WebDriver instance to pass to the expected conditionstimeOutInSeconds
- The timeout in seconds when an expectation issleepTimeOut
- The timeout used whilst sleeping. Defaults to 500ms called
-
-
Method Details
-
until
public <T> T until(com.google.common.base.Function<org.openqa.selenium.WebDriver, T> isTrue) Description copied from interface:Wait
Implementations should wait until the condition evaluates to a value that is neither null nor false. Because of this contract, the return type must not be Void.If the condition does not become true within a certain time (as defined by the implementing class), this method will throw a non-specified
Throwable
. This is so that an implementor may throw whatever is idiomatic for a given test infrastructure (e.g. JUnit4 would throwAssertionError
.- Specified by:
until
in interfaceWait<org.openqa.selenium.WebDriver>
- Type Parameters:
T
- the return type of the method, which must not be Void- Parameters:
isTrue
- the parameter to pass to theExpectedCondition
-
throwTimeoutException
Override this method to throw an exception that is idiomatic for a given test infrastructure. E.g. JUnit4 should throw anAssertionError
-