With gmsaas CLI tool, you can use Genymotion SaaS to run automated tests in your continuous integration pipeline. This works regardless of your framework or your continuous integration server. The gmsaas CLI tool is a command line tool that manages the lifecycle of your virtual devices and enables interaction between your environment and your Genymotion SaaS instance via ADB.
Prerequisite
- Install and setup gmsaas command line tool
- Authenticate gmsaas with an API Token:
gmsaas auth token <token>
Test Automation Frameworks
Instrumented tests
With Gradle
- Create and start your instance by running:
gmsaas instances start <RECIPE_UUID> <INSTANCE_NAME>
- <RECIPE_UUID> is the recipe identifier.
- <INSTANCE_NAME> is the name you wish to give to the instance.
- Once started, the command returns and shows the <INSTANCE_UUID>.
- Tip: The list of available recipes can be retrieved using this command:
gmsaas recipes list
- Connect the instance to ADB:
gmsaas instances adbconnect <INSTANCE_NAME> [--adb-serial-port <VALUE>]
- Run your instrumented tests with:
./gradlew connectedAndroidTest
You can view your tests running in the virtual device by signing in to Genymotion SaaS.
- Once your tests have run, stop the virtual devices using:
gmsaas instances stop <INSTANCE_UUID>
- <INSTANCE_UUID> is the UUID (not the name!) of the instance used for the test. All data generated on the virtual device during the tests are destroyed.
With Genymotion Java API
- To run your instrumented tests, you can also use the Genymotion Java API to automate the modification of sensor values such as battery, GPS, ID, SMS, calls.
- For more information on the implementation of the Genymotion Java API, please refer to the official documentation.
- A sample project is available here.
Other Frameworks
We are also compatible with the following frameworks:
- Detox
- Espresso
- Appium
Continuous Integration Servers
- Jenkins
- Bitrise
- CircleCI
- Github actions
- And many more
For a complete list of available integrations, feel free to have a look at our website. Or visit our website Tutorial section for more tutorials.