appium/java-client

AppiumElementLocator & Implicit Waits

titusfortner opened this issue · 2 comments

Am I reading this code correctly, that every single element location in the Java bindings makes multiple implicit wait wire calls?

When running a test on a remote platform this causes a huge amount of overhead, exacerbated by any increased latency from a proxy, etc during any given run. Implicit waits are heavily discouraged by the Selenium developers (including the guy who created them in the first place). I think it should be relatively easy to change this code to be implemented by an explicit wait strategy, which would only make additional wire calls if they are actually needed.

Are there any other reasons that I'm not aware of that make implicit waits necessary, or can someone pair with me on a PR for this?

Yeah, seems weird for a client to make so many implicit wait calls. Could lead to a performance degradation, especially when there's latency on the wire.

@titusfortner @jlipps the new build is going to be published today