mobile-dev-inc / maestro

Painless Mobile UI Automation
https://maestro.mobile.dev/
Apache License 2.0
5.85k stars 276 forks source link

Add a "maestro doctor" command line which does basic checks if the app is ready to run #1136

Closed SuperRoach closed 4 months ago

SuperRoach commented 1 year ago

Is your feature request related to a problem? Please describe. I'm looking at helping onboard new users.

Describe the solution you'd like A new command line option for maestro, called doctor. maestro doctor would run, and check for the things needed to run the app.

By doing this, you have more room on the command line to tell them what the user should do. I'm going to list the macOS ways of doing things, but you could also link to websites to get the user in the right direction.

Overall though, a set of checkmarks would fit right in with how a normal maestro test would look anyway - however the test is in some ways, on your own computer.

Describe alternatives you've considered It would show the current version of Maestro, as well as the command line for upgrading it if needed. You could in theory check if there is a newer version available and let the user know that, but that's making things a bit too complex too quickly.

It would check:

In slack, I also mentioned a check for which scrcpy, which is a fantastic companion app with this but honestly is not worth including in the doctor output.

Additional context https://docs.flutter.dev/get-started/install/windows#run-flutter-doctor image Here is a sample of what flutter doctor looks like. Their implementation is a good part of what makes setting it up more hassle free compared to say React native.

Possible web links if wanting to go down that route: Android SDK: https://developer.android.com/studio/index.html If you want it to be apple specific, the command to do this is brew install android-platform-tools - if they have brew.

To install java: Official OpenJDK link (short but may be confusing): https://openjdk.org/install/ MultiOS: https://www.freecodecamp.org/news/install-openjdk-free-java-multi-os-guide/ (better but unofficial)

bartekpacia commented 4 months ago

This is a great issue, thanks a ton!

I unknowingly duplicated it with #1785 though.

github-actions[bot] commented 3 months ago

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. Thank you for helping keep us our issue tracker clean!