very_good_workflows icon indicating copy to clipboard operation
very_good_workflows copied to clipboard

feat: Can you add a reusable workflow for running app testing using maestro or similar?

Open andreped opened this issue 1 year ago • 4 comments

Description Thank you for the cool workflows! Great project! :]

From the overview of workflows, it would make a lot of sense to include a reusable workflow for app testing. This could be with the Dart/Flutter testing framework, or using an external tool, if you prefer that.

I am currently looking into Maestro, so I suggested that as an option.

andreped avatar Aug 08 '24 11:08 andreped

@wolfenrain nudging you here since you've worked on user flow testing with Fluttium, I'll imagine you've looked into Maestro.

alestiago avatar Aug 13 '24 09:08 alestiago

@wolfenrain nudging you here since you've worked on user flow testing with Fluttium, I'll imagine you've looked into Maestro.

@alestiago, @wolfenrain Fluttium is also an option for me. Ideally, I want to be able to perform these UI tests through GitHub Actions, so whichever solution works is OK for me :]

Note that running these tests locally is fine, but having this automated in Actions would be the best, hence why I raised the question.

andreped avatar Aug 13 '24 10:08 andreped

In talking this over with the team one key part of this is actually making sure that we invest a bit more in integration tests in some of our packages to ensure that the workflow has integration tests to run. Given that it's not currently high priority for us to do so I'm going to move this to the backlog for future consideration but it won't be immediately actioned.

tomarra avatar Aug 27 '24 15:08 tomarra

Note that I have been exploring various frameworks which all seem to work fine locally but fail on GitHub-hosted runners (Maestro, Patrol). It seems like the runners are just not powerful enough to run reliably resulting in all kinds of flaky tests. Will be of interest to find a solution that works well. Perhaps a different simulator is required?

AFAIK, I don't think Fluttium focus on integration tests (see here), and I see very few who use it with GitHub Actions workflows.


EDIT: This README is also a great resource to get an overview of which CI providers that work and which issues that occur: https://github.com/retyui/Using-GitHub-Actions-to-run-your-Maestro-Flows?tab=readme-ov-file#list-of-errors-that-you-may-get

andreped avatar Aug 28 '24 06:08 andreped

patrol is great too

neiljaywarner avatar Apr 01 '25 18:04 neiljaywarner