Implicit wait is not working in Appium 1.5

Has anyone else come across this issue with Appium 1.5?

I have ‘implicitlyWait’ set to 16000 millies and I’m using a WebDriverWait for an expected condition. This works perfectly fine with Appium 1.4.16 with Java Client 3.4.0 but doesn’t seem to work with Appium 1.5 and my tests are failing with NoSuchElementException.

1.4.16 log:
info: --> POST /wd/hub/session/4072fb60-349c-4451-b10b-07c9e583e538/timeouts {“type”:“implicit”,“ms”:16000}
info: [debug] Set Android implicit wait to 16000ms
info: [debug] Waiting up to 16000ms for condition

1.5 log:
[MJSONWP] Calling AppiumDriver.timeouts() with args: [“implicit”,16000,“13328400-493c-4691-bf8c-fd43ede73ef6”]
[MJSONWP] Responding to client with driver.timeouts() result: null
[HTTP] <-- POST /wd/hub/session/13328400-493c-4691-bf8c-fd43ede73ef6/timeouts 200 5 ms - 76
[HTTP] --> POST /wd/hub/session/13328400-493c-4691-bf8c-fd43ede73ef6/element
[MJSONWP] Calling AppiumDriver.findElement() with args: [“xpath”,"//android.widget.TextView[@text=‘Ελεκτής Χρωμάτων’]",“13328400-493c-4691-bf8c-fd43ede73ef6”]
[debug] [BaseDriver] Waiting up to 0 ms for condition

Did you manage to solve this in any way? I am experiencing the same behaviour, the implicit wait is completely ignored.

I’ve noticed the same thing.

I also faced the same but now I am using WebDriverWait as a workaround.

@Chirag_Singh I am also using WebDriverWait as a workaround - given up trying to set Implicit Wait.

This has been resolved with Appium version 1.5.2

I’m still seeing this on 1.5.2. On a Mac, Target is Android, Using Java,

Interesting… What do you see in the logs?

I can see the BaseDrive is now correctly setting the Implicit wait in my test:
[debug] [BaseDriver] Waiting up to 16000 ms for condition

I am still seeing this on a Mac running Appium 1.5.2, target is Android using Java Client 4.0.0. Strangely this happens only on Marshmallow, but this works under Kitkat and Lollipop though. Any pointers?

still , i see the same issue in mac

[MJSONWP] Calling AppiumDriver.timeouts() with args: [“implicit”,10000,“55414059…
[debug] [BaseDriver] Set implicit wait to 10000ms
[MJSONWP] Responding to client with driver.timeouts() result: null
[HTTP] <-- POST /wd/hub/session/55414059-9022-4521-b206-a573726f8dbc/timeouts 200 3 ms - 76
[HTTP] --> POST /wd/hub/session/55414059-9022-4521-b206-a573726f8dbc/element {“using”:“id”,“value”:“android:id/button1”}
[MJSONWP] Calling AppiumDriver.findElement() with args: [“id”,“android:id/button1”,…
[debug] [BaseDriver] Waiting up to 10000 ms for condition
[debug] [AndroidBootstrap] Sending command to android: {“cmd”:“action”,“action”:“find”,“params”:{“strategy”:“id”,“selector”:“android:id/button1”,“context”:”",“multiple”:false}}
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Got data from client: {“cmd”:“action”,“action”:“find”,“params”:{“strategy”:“id”,“selector”:“android:id/button1”,“context”:"",“multiple”:false}}
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Got command of type ACTION
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Got command action: find
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Finding ‘android:id/button1’ using ‘ID’ with the contextId: ‘’ multiple: false
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Using: UiSelector[INSTANCE=0, RESOURCE_ID=android:id/button1]