capabilities

A fresh look for capability generator

We are excited to unveil a fresh look for capabilities, along with SDK configuration and improved navigation. Hope you love it as much as we do.

Capabilities

Capabilities are a series of key-value pairs that allow you to configure your tests on the BrowserStack cloud grid.

Use our Capabilities Generator to configure your test suite in the language of your choice. The capabilities generator lets you select from a comprehensive set of options you can use to customize your tests on the BrowserStack Cloud grid. You can also find out more about each capability by scrolling to our Capabilities Reference section.

Capability generator

Other frameworks

WebdriverIO

Appium - BrowserStack SDK

capability-builder

Tabs

Appium

Integration method

Browserstack SDK

Non-SDK Integration

BrowserStack SDK is a plug-and-play solution that enables you to run your entire test suite with no code changes. Using the SDK reduces the integration time from hours to a few minutes.

Core Capabilities

Platform

Select a Platform name to choose the devices from below

Select browser or device combination

You can run multiple threads in parallel

You can now use regular expressions for device and OS version capabilities on BrowserStack App Automate.

Parallels per platform

The number of parallel threads to be used for each platform set.

Appium Version

Application (.apk/.aab)

Specify the app to test on

Other Apps

A list of other apps to install prior to running test

Automation Name

Set an automation engine for Appium

Language

Set the language of app under test

Locale

Set device locale

Mid Session Install Apps

A list of other apps to install prior to running test

Project details

Local Connectivity

Enable BrowserStack Local

Test localhost / internal servers in your network

Debugging

Network Logs

Video

Appium Logs

App profiling report

browserstack.yml

1userName: YOUR_USERNAME
2accessKey: YOUR_ACCESS_KEY
3platforms:
4  - platformName: android
5    platformVersion: "12.0"
6    deviceName: Samsung Galaxy S22 Ultra
7  - platformName: android
8    platformVersion: "14.0"
9    deviceName: Google Pixel 8 Pro
10  - platformName: android
11    platformVersion: "13.0"
12    deviceName: OnePlus 11R
13buildIdentifier: ${BUILD_NUMBER}

Capabilities reference gist file

Expand this section to check out the list of supported Capabilities

# =============================================================================================================================
# Set BrowserStack Credentials
# =============================================================================================================================
userName: YOUR_USERNAME
accessKey: YOUR_ACCESS_KEY

# Set 'framework' of your test suite. Example, 'testng', 'cucumber', 'cucumber-testng'
framework: testng # Required only for java based frameworks

# =============================================================================================================================
# Parallels per Platform
# =============================================================================================================================
parallelsPerPlatform: 1

# =============================================================================================================================
# Android/iOS Application
# =============================================================================================================================
app: bs://5f5w7g3s5a9b5g6f39fk0 #passing app_url
app: /path/to/app/file/application-debug.apk #Passing absolute path from your local filesystem

# Specify the app path with the custom_id
app:
  path: /Path/to/app
  custom_id: custom_id

appVersion: 2.0

# =============================================================================================================================
# Platforms (devices to test)
# =============================================================================================================================
platforms:
  - platformName: android
    deviceName: Samsung Galaxy S22 Ultra
    platformVersion: 12.0
  - platformName: android
    deviceName: Google Pixel 7 Pro
    platformVersion: 13.0

# =============================================================================================================================
# BrowserStack Reporting
# =============================================================================================================================
projectName: BrowserStack Samples
buildName: browserstack build
buildIdentifier: '${BUILD_NUMBER}'

# =============================================================================================================================
# Test Configuration Capabilities
# =============================================================================================================================
browserstackLocal: true # <boolean> (Default true)
# Options to be passed to BrowserStack local in-case of advanced configurations
browserStackLocalOptions:
  forcelocal: true
  localIdentifier: randomstring

appiumVersion: 2.0.0
idleTimeout: 90
acceptInsecureCerts: true
httpProxy: http://user:pwd@127.0.0.1:1234
httpsProxy: https://user:pwd@127.0.0.1:1234

# =============================================================================================================================
# Debugging options
# =============================================================================================================================
video: true

debug: true
networkLogs: true
deviceLogs: true
appiumLogs: true
captureContent: false

# =============================================================================================================================
# Device Feature Capabilities
# =============================================================================================================================
resignApp: true
customNetwork: 1000
networkProfile: 4g-lte-advanced-good
deviceOrientation: portrait
geoLocation: US
timezone: New_York
language: Fr
locale: Fr

# =============================================================================================================================
# Appium Capabilities
# =============================================================================================================================
automationName: UIAutomator2
autoGrantPermissions: true
newCommandTimeout: 60

# =============================================================================================================================
# Test Reporting & Analytics
# =============================================================================================================================
testObservability: true

Capabilities Reference

Appium - BrowserStack SDK

BrowserStack specific capabilities
userName
For running your Selenium and Appium tests on BrowserStack it, requires a username and an access key for authenticating the user. This capability can be used to set the username.
accessKey
For running your Selenium and Appium tests on BrowserStack it, requires a username and an access key for authenticating the user. This capability can be used to set the access key.
framework
Specify the language framework for your test.
app
Specify the app you want to test.
appVersion
Configure which version your test needs to run on.
parallelsPerPlatform
Specify the number of parallel threads to be used for each platform set.

Test configuration capabilities

SDK-Capability Values
projectName
Allows the user to specify a name for a logical group of builds.
buildName
Allows the user to specify a name for a logical group of tests.
buildIdentifier
A unique identifier to logically group multiple test sessions together.
buildTag
A custom tag for your builds.
browserstackLocal
Use this capability to test your locally hosted websites on BrowserStack.
forcelocal
Use this capability to resolve all your traffic via BrowserStack Local tunnel.
localIdentifier
Use this capability to specify the unique Local Testing connection name in your test.
debug
Required if you want to generate screenshots at various steps in your test.
networkLogs
Required if you want to capture network logs for your test.
video
Required if you want to enable video recording during your test.
deviceLogs
Capture device logs for your test.
appiumLogs
Capture raw Appium logs for your test.
captureContent
Capture response payload in network logs.
geoLocation
Use this capability to simulate website and mobile behavior from different locations.
timezone
Use this capability to run your tests on a custom timezone.
idleTimeout
BrowserStack triggers BROWSERSTACK_IDLE_TIMEOUT error when a session is left idle for more than 90 seconds.
acceptInsecureCerts
Avoid invalid certificate errors while using self-signed certificate to test your app.

Mobile capabilities

SDK-Capability Values
deviceName
Specifies a particular mobile device for the test environment.
platforms
Specify all the device combinations you want to test on.
platformName
Specify all the device combinations you want to test on.
platformVersion
Specifies a particular mobile device for the test environment.
deviceOrientation
Set the screen orientation of mobile device.
customNetwork
Required if you want to simulate the custom network condition.
networkProfile
Required if you want to simulate different network conditions.

Miscellaneous capabilities

SDK-Capability Values
appProfiling
Enable detailed app performance profiling.
interactiveDebugging
Interact, and debug any ongoing test session.
appStoreConfiguration Configure app store credentials.
midSessionInstallApps
Install app(s) in between a test session.
enableBiometric
Enable Biometric Authentication.
enablePasscode
Use passcode-protected devices to run tests.
updateIosDeviceSettings
Set iOS device settings such as dark mode.
enableApplePay
Test Apple Pay in your test session.
nativeWebTap
Enable Apple Pay payment screen.
enableAudioInjection
Use your audio files in the test.
enableSim
Obtain a device with SIM
simOptions
Set SIM device configuration.
testObservability
Advanced test reporting and debugging tool that helps analyze test failures.