Skip to content

Android automation blocked by lack of Login Automation documentation #876

@fmatosqg

Description

@fmatosqg

Checklist

  • I have looked into the Readme, Examples, and FAQ and have not found a suitable solution or answer.
  • I have looked into the API documentation and have not found a suitable solution or answer.
  • I have searched the issues and have not found a suitable solution or answer.
  • I have searched the Auth0 Community forums and have not found a suitable solution or answer.
  • I agree to the terms within the Auth0 Code of Conduct.

Describe the problem you'd like to have solved

My problem is exactly the same as #636, however the solution there points to a file from the flutter repo that doesn't exist anymore. I will assume that that file was outdated and/or didn't do its job anymore.

I've tried UIAutomator to no success. It's extremely flaky. Some of the problems I'm facing are:

  • hard to determine when the webview finished loading, and using waitForStableInActiveWindow is challenging because of the blinking cursor
  • easy to fill in the field on emulator without google apis but couldn't find a way on google emulator with gplay, since it wipes the viewIdResourceName and all I have left is a non-editable label with a sibling which is an EditText
  • when clicking the login button it's extremely flaky, since very often the keyboard obscures it partially making the code think it clicked when it didn't ; creating a watcher to dismiss keyboard is also very flaky for reasons I can't understand

and half a dozen other variations, as soon as I stabilize one thing I find another one that's super unstable.

Describe the ideal solution

1- Is it possible to de-activate web login and do it through either native ui or headless? The only url that is exposed to CI is the one that the webview uses.

or

2- Can you please provide an alternative method of logging in? I'm happy to do manual regression for testing login as a feature, what I need is a way to reach the logged in state so I can do instrumented tests for features that are unrelated to login but still require a valid token - meaning I need to achieve the "logged in" state by any method

or

3- Can you share the old file even if it's not 100% helpful?

or

4- Can you find and publish an official solution to this problem?

Alternatives and current workarounds

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestA feature has been asked for or suggested by the community

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions