You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
TL;DR We should introduce a (configurable globally and on a per-case basis) timeout when finding native actions. We should also be loud when the native view is not found (currently we fail silently, which is very bad).
For example, see #409 as a result of this problem.
Synopsis
Currently, when the user does:
await $.native.tap(Selector(text:'Sign in));
the native side checks if a widget with text 'Sign in' exists, and if it doesn't, we crash. This is not a good DX.
The scope is not only to improve tap() and enterText(), but also permission-handling related methods, which are also impacted by this problem.
Goals:
add Duration visibleTimeout to NativeAutomator() constructor. This will be the global timeout that defaults to 10 sec. Send timeouts to native automator during constructor call.
wait for visibleTimeout instead of crashing immediately when interacting with native views (iOS+Android)
Non-goals (though could be done in the future, when there's a need)
make tap() and doubleTap() accept timeout (defaulting to global timeout) on iOS and Android
make enterText() accept timeout (defaulting to global timeout) on iOS and Android
make permission-handling methods accept timeout (global timeout) on iOS and Android
To do in separate issue:
consider adding timeouts to other functions (e.g open/list/tap notifications, getNativeViews)
This issue has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar problem, please file a new issue. Make sure to follow the template and provide all the information necessary to reproduce the issue.
TL;DR We should introduce a (configurable globally and on a per-case basis) timeout when finding native actions. We should also be loud when the native view is not found (currently we fail silently, which is very bad).
For example, see #409 as a result of this problem.
Synopsis
Currently, when the user does:
the native side checks if a widget with text
'Sign in'
exists, and if it doesn't, we crash. This is not a good DX.The scope is not only to improve
tap()
andenterText()
, but also permission-handling related methods, which are also impacted by this problem.Goals:
Duration visibleTimeout
toNativeAutomator()
constructor. This will be the global timeout that defaults to 10 sec. Send timeouts to native automator during constructor call.visibleTimeout
instead of crashing immediately when interacting with native views (iOS+Android)Non-goals (though could be done in the future, when there's a need)
tap()
anddoubleTap()
accept timeout (defaulting to global timeout) on iOS and AndroidenterText()
accept timeout (defaulting to global timeout) on iOS and AndroidTo do in separate issue:
See also:
tap()
andenterText()
on Android #248, which might be relatedcc: @mateuszwojtczak
The text was updated successfully, but these errors were encountered: