Skip to content
RecipesDoc

Mobile App on BrowserStack, Sauce Labs, LambdaTest or Your Own Appium Server

Certyn tests your Android or iOS app on real devices from your device cloud, or through your own Appium server.

For teams with a native or hybrid Android or iOS app. For a website on a phone screen, use a normal web project instead.

Your setup

  • An Android or iOS app build.
  • A BrowserStack, Sauce Labs or LambdaTest account, or your own Appium server.
  • A test account for the app, if it has a sign-in.

Say this to Certyn

Set up mobile testing for our Android app on BrowserStack. Use a Samsung Galaxy S23.

What Certyn does

  1. Opens the mobile setup form (appium_setup).
    • Device cloud: you pick the provider and enter the username and access key. You pick the build you uploaded in the provider's dashboard, then the device and OS version.
    • Your own Appium server: you enter its URL, the app and the device.
  2. Checks the setup with a real short Appium session: it opens the app, reads one screenshot or page source, and closes the session.
  3. Saves the settings as APPIUM_* variables and sets the project type to appium. The access key is a secret.
  4. If the app has a sign-in, opens the sign-in form for the test account.
  5. Offers a first run, for example a smoke test of the main screens. It asks before it starts.

What you get

  • Runs on a real device, with screenshots, each step, and the result.
  • One Certyn issue per real product bug, with evidence.
  • A different build or device per environment: set it on that environment.

Limits

  • Certyn does not upload builds. Upload each new build in your provider's dashboard, or set APPIUM_APP to its id (bs://…, storage:filename=…, lt://…).
  • Each running session takes one device slot on your provider's plan.
  • An Appium server on your private network or laptop is not reachable from Certyn's cloud. Run a self-hosted runner next to it and use http://host.docker.internal:4723, or expose it with a tunnel. The setup check does not run for private servers; the first run checks it from the runner.