Skip to main content
🚀 Self Healing AI Agent now live in App Automate! Auto-fix flaky tests instantly with zero code changes. Enable now!
No Result Found
Connect and get help from 7,000+ developers on our Discord community. Ask the CommunityAsk the Community

Integrate BrowserStack App Automate with Testim

A step-by-step guide to running Testim mobile app tests with BrowserStack App Automate

Testim is a platform that lets you record and playback automated tests in minutes. Testim helps you capture detailed step-by-step bug scenarios. It significantly reduces the maintenance and rewriting of tests.

Testim supports mobile app testing through Appium integration, allowing you to test your mobile applications on BrowserStack’s real device cloud.

Prerequisites

Before you begin, ensure you have:

  • A Testim account with mobile app testing capabilities.
  • You have access to the BrowserStack account credentials, namely Access Key and Username.
  • Your mobile application (APK for Android or IPA for iOS).

Integration steps

Follow the steps below to integrate Testim with BrowserStack App Automate:

Upload your app to Testim

  1. Navigate to the Mobile Apps Library in Testim.
  2. Click + NEW APP button.
  3. Upload your application file (APK or IPA).
  4. Wait for the upload to complete. Your app will appear in the library with its version and details.

The Mobile Apps Library showing an uploaded application

Add BrowserStack grid in Testim

  1. Navigate to the Grids section in Testim.
  2. Click + ADD NEW GRID button.
  3. Enter a name for your grid (for example, “browserstack”).
  4. In the Host field, enter hub-cloud.browserstack.com.
  5. In the Port field, enter 443.
  6. Enter your BrowserStack Username and then Access Key.
  7. Click UPDATE to save the grid configuration.

The Grids page in Testim showing available grids

The Edit Grid dialog with BrowserStack configuration details

Create a configuration for BrowserStack

  1. In the Testim Editor, open your recorded test.
  2. Click the dropdown icon next to the Run button.
  3. Select Run on a grid.
  4. Select your BrowserStack grid from the dropdown.
  5. If no configuration exists, you’ll see an untitled configuration option. Click the edit button next to it.
  6. In the Create New Configuration dialog:
    • Enter a Configuration Name
    • Choose browserstack as the grid
    • Select Static allocation as the configuration type
    • Choose your desired device from the available devices list (for example, Samsung Galaxy S23 Ultra with OS version 13.0)
  7. Click ADD to save the configuration.

The Run on a grid dropdown showing BrowserStack grid selection

The Create New Configuration dialog showing device selection options

Run tests on BrowserStack

  1. In the Testim Editor, open your test.
  2. Click the dropdown icon next to the Run button.
  3. Select Run on a grid.
  4. Choose your BrowserStack grid from the dropdown.
  5. Select the configuration you created.
  6. Click RUN to execute the test.

The Testim Editor showing a test ready to run on BrowserStack grid

The test will run on BrowserStack App Automate, and you can monitor it in real-time on the App Automate dashboard.

Configure capabilities for App Automate

For optimal integration with BrowserStack, Testim requires capabilities to be formatted according to W3C WebDriver standards. BrowserStack-specific capabilities must be nested inside bstack:options.

Capability format

When running tests through Testim, capabilities are automatically configured. However, if you’re customizing capabilities through the Testim CLI with --mode appium, ensure the following format:

Standard Appium capabilities (at top level with appium: prefix):

  • appium:platformVersion
  • appium:deviceName
  • appium:app

Under the W3C WebDriver protocol, only platformName is a standard capability. Non-standard capabilities such as deviceName, platformVersion, and app must be prefixed with appium: when sent over the raw Appium protocol (as used by the Testim CLI with --mode appium). BrowserStack SDK examples may show these capabilities without the prefix because the SDK handles prefixing internally. For details, see the Appium W3C capabilities reference.

BrowserStack capabilities (inside bstack:options):

  • buildName
  • projectName
  • sessionName
  • realDevice
  • debug
  • networkLogs

For the full list of supported capabilities, refer to the BrowserStack App Automate capabilities documentation.

  • Tests can only be recorded on a physical, or virtual devices provided by Testim. There is no option to select a remote grid for recording the script.
  • Testim sets the project name, build name, and other capabilities automatically with limited customization options. Your tests will appear on the App Automate dashboard with these automatically generated names.
  • For advanced configuration options, refer to the Testim documentation on grid management.

Next steps

We're sorry to hear that. Please share your feedback so we can do better

Contact our Support team for immediate help while we work on improving our docs.

We're continuously improving our docs. We'd love to know what you liked





Thank you for your valuable feedback

Is this page helping you?

Yes
No

We're sorry to hear that. Please share your feedback so we can do better

Contact our Support team for immediate help while we work on improving our docs.

We're continuously improving our docs. We'd love to know what you liked





Thank you for your valuable feedback!

Talk to an Expert
Download Copy Check Circle