Once the implicit wait is activated by the command or the button, the runner will retry a failing command until all the required elements are present or until the defined timeout is reached.It is designed to :Avoid the user to add waitForElementPresent before click, type, select...Implement the implicit wait function available with Selenium 2 WebDriversHandle AJAX processing
An error is raised when an element is not found and when the timeout is reached (5 seconds by default).New Selenium commands :setImplicitWait | timeout | |
Retry a failing command until all the required elements are present or until the defined timeout is reached.
setImplicitWaitCondition | 5000 |setImplicitWaitCondition | timeout | condition_js |
Waits until the condition is true before executing each following command.
Examples using Ajax libraries to wait the end of the transaction :
setImplicitWaitCondition | 5000 | !window.dojo && !window.dojo.io.XMLHTTPTransport.inFlight.length |Compatibility :
setImplicitWaitCondition | 5000 | !window.Ajax || !window.Ajax.activeRequestCount
setImplicitWaitCondition | 5000 | !window.tapestry || !window.tapestry.isServingRequests()
setImplicitWaitCondition | 5000 | !window.jQuery || !window.jQuery.active
setImplicitWaitCondition | 5000 | !window.Sys || !window.Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack()
It's not compatible with some plugin providing conditional and looping capabilities.Project Website : http://code.google.com/p/selenium-implicit-wait/