I have noticed that this code snippet:
element_presence = EC.presence_of_element_located(locator)
WebDriverWait(self.driver, timeout).until(element_presence)
When timeout is set to 1, the wait time is actually about 10 seconds. Here is the corresponding snippet from the Appium log:
2018-05-25 00:21:02:521 - [debug] e[35m[W3C]e[39m Calling AppiumDriver.findElement() with args: ["id","com.blah.blahrkitandroiddemo:id/gnot","40c1b16f-9ada-4822-a431-da4c5e9608f4"]
2018-05-25 00:21:02:521 - [debug] e[35m[BaseDriver]e[39m Valid locator strategies for this request: xpath, id, class name, accessibility id, -android uiautomator
2018-05-25 00:21:02:522 - [debug] e[35m[BaseDriver]e[39m Waiting up to 10000 ms for condition
When I set the WebDriverWait timeout to > 10 seconds, I see multiple calls to find with the 10 second wait.
Is there any way for me to reduce the Waiting up to 10000 ms for condition
to a 1 second (or other) wait time? That is, is there some BaseDriver config that I can tweak?
I am running on:
macOS 10.13.4
Appium v1.8.0
Appium-Python-Client 0.26
I see the same behavior testing Android with UiAutomator2 and testing iOS with XCUITest