✅Join us - https://sendfox.com/thetestingacademy
In this video, We are discussing Waits in Selenium or Different Types of Waits in Selenium.
- Implicit wait in selenium.
- Explicit wait in selenium.
- Fluent wait in selenium
🚀 Day 13 Task : Waits in Selenium
🚀 Thread : https://scrolltest.com/automation/day13
🚀 All Task List : https://scrolltest.com/automation/task
🚀 Watch Full Playlist : https://scrolltest.com/automation/playlist
✅ Implicit wait in selenium
- Implicit wait is used to set a default wait time (say 20 secs) in your automation script to wait for an element on the page.
-
Features
- Once implicit wait is set, it is applicable for the whole automation script.
- Default wait time for Implicit wait is 0 secs.
- Webdriver throws "No Such Element Exception" if element is not found in specified time. implicit wait is the maximum time set between two steps/commands of the automation script. Syntax
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
✅ Explicit wait in selenium
- Explicit wait can be called as conditional wait. It tells the WebDriver to wait for certain conditions before maximum time exceeded.
- Features Explicit wait is intelligent wait, as it waits certain conditions It provides a better approach to handle dynamic ajax elements. WebDriver throws "ElementNotVisibleException" if explicit wait fails. It applies to only single element and not to whole script. Explicit wait is the best way to replace Thread.sleep() Syntax
// Explicit Wait
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.alertIsPresent());
✅ Fluent wait in selenium
Fluent wait is kind of conditional wait but with frequency.
It means fluent wait is used to wait for a condition with a regular frequency/time interval to be checked before throwing "ElementNotVisibleException".
Features
ElementNotVisibleException is element not found
it will check after every 5 secs for the element X
Syntax
//Fluent Wait
Wait wait = new FluentWait(WebDriver reference)
.withTimeout(timeout, SECONDS)
.pollingEvery(timeout, SECONDS)
.ignoring(Exception.class);
WebElement foo = wait.until(new Function() {
public WebElement apply(WebDriver driver) {
return driver.findElement(By.id("foo"));
}
});
--
Be sure to subscribe for more videos like this!
Top comments (0)