Site Loader
Auckland, New Zealand
Implicit and Explicit Wait There are two types of waiting mechanism available in Selenium
  1. Explicit Wait
  2. Implicit Wait

Explicit Wait

  • Explicit Wait will make your code to wait for certain condition to occur before moving forward.
  • This can be achieved with the combination of WebDriverWait and ExpectedConditions
  • WebDriverWait by default calls ExpectedCondition to poll by every 500 milliseconds until it returns successfully.
Code Snippet
public static void ExplicitWait(WebDriver driver, WebElement element) {
   (new WebDriverWait(driver, 10)).until(ExpectedConditions.visibilityOf(element));
}

Implicit Wait

  • Implicit wait make the code to wait for an element to appear in DOM
  • Implicit wait timeout once set, is set for the lifetime of the WebDriver Object Instance.
Code Snippet
public static void ImplicitWait(WebDriver driver) {
   driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
}
Thanks for reading the post and watching the video !!! Please share your comments to improve the post. Thanks, Karthik KK

Post Author: Karthik kk

9 Replies to “Explicit and Implicit wait in Selenium”

      1. Hi Karthik,

        Can you please explain C# Explicit wait method(in above video Java Explicit wait method available , we need C# wait methods)

        Regards,
        Mahesh Reddy

  1. Hey Karthik,
    I am using C# with selenium Webdriver. Can you give an example for explicit wait but with using page object model? I do not want to be finding the element everything I want to perform wait as it defeats the whole purpose of Page Object Model.

  2. Hey Karthik,
    I am using C# with selenium Webdriver. Can you give an example for explicit wait but with using page object model? I do not want to be finding the element *everytime I want to perform wait as it defeats the whole purpose of Page Object Model.

  3. An implicit wait tells WebDriver or Selenium Scripts to poll the DOM for a certain amount of time when Selenium Scripts trying to find an Object/Element or Object/Elements if they are not visible or Interactable.
    xplicit wait tell the WebDriver to wait for certain time on basis of certain Expected conditions before throwing an “ElementNotVisibleException” exception ,Explicit wait is specific wait applied only for specified elements. Explicit wait have better flexibility then Implicit wait.

  4. Hi,
    I am using Explicit wait (expected conditions-ElementToBeClickable for 50 seconds) for clicking a radio button on a web page but whenever i am running my test case it is giving me Timeout exception after 50 seconds. However if am using Thread.Sleep(2000), then the radio button is getting clicked successfully. What could go wrong?I dont want to use thread.sleep as its not advisable.

Leave a Reply to karthik KK Cancel reply

Your email address will not be published. Required fields are marked *