Skip to main content

Can't wait to wait -- Webdriver Waits!!

Wait!!!

These four letters can drive you crazy if you are having a bad day using Webdriver...

Thus if you are reading this article you are already in the middle of one bad bad day...thus I'll cut the crap and go directly into the ways you can add waits using webdriver:


Type 1 - Using driver.manager.timeouts()

    Implicit Waits - When you set this wait, webdriver would wait for this amount of time before failing any command.

        1. Syntax - driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        2. Example - Webdriver is looking to find an element using an xpath and its not able to find it, webdriver waits for 10 seconds before trying to find the element and thus failing if it still can't find the element after 10 seconds

    Page Load Timeouts - When you set this wait, webdriver would wait for this amount of time to declare page load timeouts

        1. Syntax - driver.manage().timeouts().pageLoadTimeout(100, SECONDS);
        2. Example - Let's say we are navigating from one page to another, when we reach the next page in line, we might need to wait for some time so that all the elements on the page would load and then execute the commands. In this case, the above command is useful

    Script timeouts - When you set this wait, webdriver would wait for this amount of time to declare script timeouts. It would wait for an asynchronous script to finish execution before throwing an error. If the timeout is negative, then the script will be allowed to run indefinitely.

        1. Syntax - driver.manage().timeouts().setScriptTimeout(100,SECONDS);
        2. Example - Let's say an asynchronous script is running and you need to wait till it completes, using the above command, we can wait till 100 seconds for the script to complete its execution. 

    Type 2 - Using support.ui

    Expected Conditions

    FluentWait

    Comments

    Popular posts from this blog

    How to check if my xpath is valid using firebug?

    Yes, you can verify if your xpath is pointing to the right source on the web application under test using FireBug. Here is how: 


    Go to the Web Application under test We'll take Google for simplicity reasons
    Open FireBug - Go to the Console Console can also be seen at the bottom of the page, so don't worry they both are the same. They can be switched as follows: 


    Type in $x("Your xpath here") on the command line prompt as shown below:

    Hit Enter/RunYou will get to see the element which was filtered out with your XPath expression

    wget error–“zsh: parse error near &”

    There is no doubt that I prefer wget way over any other type of downloads…Syntax: wget <DOWNLOAD_URL>If you get this error “zsh: parse error near &” then its probably because your download URL has a “&” so you should try giving your DOWNLOAD_URL in double quoteswget “<DOWNLOAD_URL>”If you are trying to download from a site which needs you to give your credentials then you can try giving it this waywget --http-user=<UserName> --http-password=<Password> “<DOWNLOAD_URL>”Hope this helps

    How to Unpack a tar file on Windows?

    On Windows:
    You can download a simple command line tool to do this.
    You can download the tool from here Usage can be found on the website but pasting it here too for convenience: C:\>TarTool.exe
    Usage :
    C:\>TarTool.exe sourceFile destinationDirectory
    C:\>TarTool.exe D:\sample.tar.gz ./
    C:\>TarTool.exe sample.tgz temp
    C:\>TarTool.exe -x sample.tar temp
    TarTool 2.0 Beta supports bzip2 decompression for files with extensions like tar.bz2 and .bz2.
    TarTool -xj sample.tar.bz2 temp
    or
    TarTool -j sample.bz2
    Download TarTool 2.0 Beta from here
    Unpack a .txz file on Windows
    Use the 7zip tool to unpack a .txz file on windows

    On Linux:
    You can use the bzip2 and tar combined to do this…
    for ex: bzip2 –cd <tar.bz_fileName> | tar –xvf -
    This will unpack the contents of the tar.bz file

    Happy Un-Tar-ing