Hang on, I've tried this and it didn't work that way for me!

You have actually just hit on the next problem of mixing implicit and explicit waits: you are in the realms of undefined behavior. Explicit waits and implicit waits were never supposed to be mixed, so the Selenium spec never defined what should happen if you do mix them.

Generally (but not always), explicit waits are code in the client bindings, and implicit waits are code on the remote side. So, does the client binding you are using interrupt a request to the remote server to cause a timeout, or does it wait for the response from the outstanding request before checking to see if it should timeout?

As you can see, we are totally at the mercy of different driver implementations. Different versions of the same implementation also have no predefined expectations of what should happen when you mix implicit and explicit waits. It may work fine, it may not work at all, and it may intermittently work. If it does work, it also may break when you upgrade to a newer version because, yup, you guessed it: There's no guarantee when it comes to how this stuff should be implemented.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.119.139.50