Specify a Device
If you have multiple devices open, you can specify which device to run Maestro on. To do this, you must first obtain the device identifier and then pass it to Maestro.
Obtain the device identifier
To list available Android devices, run the following command in your terminal:
From the output, locate the device identifier for the device you want to use with Maestro.
Pass the device identifier to Maestro
When running any Maestro command that requires a device (e.g. test
or studio
), you must first pass the device identifier with the --device
parameter before running the command.
For example, to run Maestro Studio on an Android device with identifier emulator-5554
use the following command:
Similarly, to run flow.yaml
on an iOS simulator with identifier 5B6D77EF-2AE9-47D0-9A62-70A1ABBC5FA2
use the following command:
Run flows in parallel
Maestro can run tests in parallel, also known as "sharding".
There are two sharding strategies available.
--shard-all
To run tests in parallel, you can use the --shard-all
parameter. This parameter will run the same tests in parallel on available devices:
--shard-split
Let’s say you have 3 running devices and 9 tests, but now you want to split this test suite into 3 chunks of tests and run them in parallel on connected devices:
To run with --shard-all 3
or --shard-split
, you need to have 3 available devices. If there are less, Maestro will print an error and request you to run more devices.
Last updated