Integrate Your Test Suite
BrowserStack’s Node SDK supports a plug-and-play integration with the Cucumber Runner. Run your entire test suite in parallel with a few steps!
This guide will help you:
Set BrowserStack credentials
Saving your BrowserStack credentials as environment variables makes it easy to run your test suite from your local or CI environment.
# Set these values in your ~/.zprofile (zsh) or ~/.profile (bash)
export BROWSERSTACK_USERNAME="YOUR_USERNAME"
export BROWSERSTACK_ACCESS_KEY="YOUR_ACCESS_KEY"
# setx.exe does not set the environment variable in the current command prompt, but it will be available in subsequent command prompts
setx BROWSERSTACK_USERNAME "YOUR_USERNAME"
setx BROWSERSTACK_ACCESS_KEY "YOUR_ACCESS_KEY"
# Verify whether the variables have been set
echo BROWSERSTACK_USERNAME
echo BROWSERSTACK_ACCESS_KEY
Install BrowserStack Node SDK
Using the BrowserStack Node SDK ensures a plug-and-play integration. It handles webdriver management, runs tests in parallel with different strategies, and configures other BrowserStack features under the hood without requiring any code changes.
# Install using npm
npm i browserstack-node-sdk@latest
"dependencies": {
"browserstack-node-sdk": "^1",
}
Add the BrowserStack runner command
Add the following task in the scripts
section in your package.json
file.
Remember to replace [args]
with the with the current cucumber args
you may have.
Create your BrowserStack config file
The browerstack.yml
file holds all the required capabilities to run your tests on BrowserStack.
Set access credentials
Set userName
and accessKey
as environment variables or use them directly in the config file.
Set platforms to test on
Set the browsers / devices you want to test under the platforms
object. Our config follows W3C formatted capabilities.
Set number of parallels threads per platform
The parallelsPerPlatform
property determines the number of parallel threads to be executed. BrowserStack’s SDK runner will select the best strategy based on the configured value.
Example 1: If you have configured 3 platforms and set parallelsPerPlatform
as 2: a total of 6 (2 x 3) parallel threads will be used on BrowserStack.
Example 2: If you have configured 1 platform and set parallelsPerPlatform
as 15: a total of 15 (1 x 15) parallel threads will be used on BrowserStack.
Organizing your test suite
Our projectName
, buildName
, and name
capabilities help with organizing your tests on BrowserStack’s Dashboard.
name
is the name of your test sessions and is automatically picked from your test class/spec name. It doesn’t need to be set manually when using the BrowserStack SDK.
Use additional debugging features
By default, BrowserStack provides prettified session logs, screenshots on every failed selenium command, and a video of the entire test. Additionally, you can enable the following features:
Create BrowserStack Config file
Copy the adjacent code snippet and create browserstack.yml
in the root folder of your test suite.
Advanced features and use cases
Here’s a list of features and capabilities that you might find useful:
Accept insecure certificates
This capability suppresses browser popups warning about self-signed certificates usually found in staging environments. Add the following property to your browserstack.yml
file.
Capability | Expected values |
---|---|
acceptSslCerts |
A boolean. Default is False .True if you want to accept all SSL certificates. |
Change desktop resolution
Add this capability to your browserstack.yml
to change the default desktop screen resolution for your tests on BrowserStack.
Capability | Description | Expected values |
---|---|---|
resolution |
Set the resolution of your VM before beginning your test | A string. Default resolution is 1024x768 Supported resolutions: Windows (XP, 7): 800x600 , 1024x768 , 1280x800 , 1280x1024 , 1366x768 , 1440x900 , 1680x1050 , 1600x1200 , 1920x1200 , 1920x1080 and 2048x1536 Windows (8, 8.1, 10): 1024x768 , 1280x800 , 1280x1024 , 1366x768 , 1440x900 , 1680x1050 , 1600x1200 , 1920x1200 , 1920x1080 and 2048x1536 OS X (Monterey,Big Sur,Catalina,Mojave,High Sierra): 1024x768 , 1280x960 , 1280x1024 , 1600x1200 , 1920x1080 , 2560x1440 , 2560x1600 and 3840x2160 OS X (All other versions): 1024x768 , 1280x960 , 1280x1024 , 1600x1200 and 1920x1080
|
Others
Use the following additional links to documentation pages that might help with your test scenarios:
Next steps
Once you have successfully integrated your test suite with BrowserStack, you might want to check the following:
- Generate a list of capabilities that you want to use in tests
- Find information about your Projects, Builds and Sessions using our REST APIs
- Set up your CI/CD: Jenkins, Bamboo, TeamCity, Azure, CircleCI, BitBucket, TravisCI, GitHub Actions
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
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!