Your first test with Appium

With Appium you can run Automated tests against hybrid and native iOS and Android apps.

You do not need to do anything special to your app, simply supply an URL to the app and we'll run it on iOS and Android.

Since Appium uses the WebDriver protocol, you can use any programming language you want: PHP, Ruby, Java, NodeJS, Python, ...

Automated Mobile App Testing

To get started, please choose a programming language/framework:

Preparing your App

Please see our Prepare Mobile App documentation to make sure your app will work on our emulators/devices.

Additional Options

Appium provides a lot of options to configure your test.

Some important options that might help:

For Android:
  • appActivity and appPackage: by default, Appium will try to extract the main Activity from your apk. If this fails, you can supply your own with these options.
  • chromeOptions: additional chromedriver options you can supply.
  • otherApps: a JSON array of other apps that need to be installed, in URL format.

For Android & iOS:
  • locale: the language of the simulator/device (ex: fr_CA)
  • newCommandTimeout: How long (in seconds) Appium will wait for a new command from the client before assuming the client quit and ending the session


It's possible to rotate the device before and during your test. Please see these examples:

Rotate before test:
desired_capabilities = { "orientation" : "LANDSCAPE " } # or PORTRAIT

Rotate during test:
((AppiumDriver) driver).rotate(ScreenOrientation.LANDSCAPE);

Testing Internal/Staged Websites

We've built TestingBot Tunnel, to provide you with a secure way to run tests against your staged/internal webapps.
Please see our TestingBot Tunnel documentation for more information about this easy to use tunneling solution.