From Maestro
Convert web-oriented Maestro tests into Smoketest browser tests.
Maestro tests are already written as ordered instructions. For web journeys, that makes migration straightforward: keep the step intent and expected outcome, and remove mobile-runtime details.
Smoketest does not replace native mobile app testing. Use this guide for Maestro coverage that targets web, responsive web, or product journeys that can be exercised in a browser.
Translate the concepts
| Maestro | Smoketest |
|---|---|
| Test YAML file | One test |
openLink or web launch step | Start URL or navigation step |
tapOn, inputText, scroll | Action step in words |
assertVisible / assertNotVisible | Verification step in words |
runTest reusable setup | Shared Step or repeated setup steps |
env values | Smoketest environment variables |
appId and native app launch | Keep in Maestro for native apps |
What to migrate
Migrate web journeys where the test reads like a customer task. Keep native app launches, simulator-only gestures, and app-install setup in Maestro.
If a YAML test contains many parameterized variants, migrate one representative journey first. Add more only when each variant protects a distinct risk.
Quick migration prompt
Use $smoketest-explore to migrate this repository's Maestro web journeys to Smoketest.
1. Check Smoketest CLI install and auth first.
2. Find Maestro YAML tests and any env files.
3. Separate browser/web tests from native app tests.
4. Convert openLink, tapOn, inputText, scroll, and assertVisible steps into test drafts written in words.
5. Convert reusable login tests into a Smoketest sharedStep when useful.
6. Put env values and secrets into Smoketest environments.
7. Mark native-only tests as skipped with a reason.
8. Validate and dry-run the manifest, then ask before applying.Example test
## Docs search
- Open the documentation site.
- Search for `environments`.
- Open the environments result.
- Verify the page explains variables and secrets.After migration
- Review each test for intent rather than YAML command parity.
- Attach environments to tests that used Maestro
envvalues. - Keep Maestro for native app coverage until Smoketest supports that surface.