BrowserStack desktop
Provar supports BrowserStack Desktop from Provar version 1.9.9 onwards.
BrowserStack is a cloud web and mobile testing platform that enables developers to test their websites and mobile applications across on-demand browsers, operating systems and real mobile devices, without requiring users to install or maintain an internal lab of virtual machines, devices or emulators.
Configuring BrowserStack in Provar
Before configuring a BrowserStack Desktop App in Provar, you should have already sorted your BrowserStack setup and have your username and access key. Refer to Browserstack’s documentation for more information on completing this setup in BrowserStack.
Adding a browser provider
To begin configuring the BrowserStack in Provar, start by adding a new Browser Provider.
Navigate to the Test Settings view and click the Browser Providers tab. Then click the Add New (‘+’) button:
On the Add new Browser Provider screen, add a Provider Name and select the BrowserStack Desktop radio button.
Add your BrowserStack details to connect to BrowserStack:
Use the Test Connection button to verify the server details.
Next, add the Browsers that will be used by clicking the Add New (‘+’) button on the Browsers section:
Adding browsers
On the Add BrowserStack Desktop Browsers page, select the Platform where testing is going to be carried out. (You can ignore the Browser Name as this will be prepopulated based on your other selections.) The Platform dropdown will show all the platforms assigned to the relevant BrowserStack account.
Then select a Web Browser and a Browser Version. For Browser Version, you can select latest instead of a specific version if you want to run on the latest version of your chosen browser.
Then select the Screen Resolution:
Once you are happy with the device details provided, click the OK button to continue.
Back on the Browser Provider details screen, you can now click the OK button to complete adding the new Browser Provider.
Now that you have added a new Browser Provider for BrowserStack, you should see this reflected on the Browser Providers tab:
Running tests on BrowserStack for desktop
To start executing test cases, first select the new Web Browser which you created above:
Once setup has been completed tests can be run in Run mode, Debug mode or Run under ANT.
Run and Debug Mode Execution
To start executing test cases, first select the new Web Browser which you created above:
This can also be set for a particular test case by using the Web Browser Override on the test’s Connection step.
Then click Run or Debug to run the test. Progress can be monitored as usual in the Test Runner:
In the BrowserStack Dashboard under the Automate section, you can see all the running sessions and those previously executed.
Click on a given session to see all the running details:
Click the session link to see details such as the running browser, machine information, test logs and video:
Note that the Job Name shows as Build: Provar Test Run System Time Stamp, as above.
Run under ANT execution
Provar also provides Run under ANT execution for BrowserStack Desktop.
To select this, right-click on the test(s) or folder and select Run Under ANT.
In the ANT Dialog, select the new Web Browser you created above:
This will add the following parameters to the Build.xml file:
Running this file will initiate the session/run in a similar way to the Run and Debug mode sessions above.
Proxy environments
BrowserStack execution will work as normal when there are proxies defined under Provar Network Settings, or defined under the Desired Capability of the Browser Provider as a proxyURL (see below).
Note that, if proxy information is set up at both levels, Provar will give preference to the proxy information in the Desired Capability setting in the Browser Provider.
To add a proxy at the Browser Provider level, open the Browser Provider in edit and go to the Desired Capabilities section.
Click the Add New (‘+’) icon:
On Add new desired Capabilities screen, enter a Name of proxyURL and the Value.
Then click OK.
Once added, use the Test Connection button to make sure the connection is working as expected.
Modifying the Job Name
You can define a custom Job Name if you would like to present a specific name in BrowserStack. This is helpful when you have multiple sets of test cases. If a custom Job Name is defined, a single entry will be created with a grouping of test cases inside.
You can define a custom Job Name by setting up a new system environment variable or in console where an ANT job is running. If the environment variable PROVAR_BROWSERSTACK_BUILDNAME is set, this name will be used as the build name.
This can be done by setting up a new system environment variable of PROVAR_BROWSERSTACK_BUILDNAME:
The system environment variable can also be set in the console:
Overriding BrowserStack credentials
You can override the credentials defined for your BrowserStack browser provider configuration. This is helpful when executing tests as part of your CI/CD build pipeline using ANT. You can override the BrowserStack configuration username and access key values by passing a command line argument or by setting up a new system environment variable.
To override the username, set one of the following values in order of priority:
Command line argument: provar.browserstack.username
Environment variable: PROVAR_BROWSERSTACK_USERNAME
To override the access key, set one of the following values in order of priority:
Command line argument: provar.browserstack.accesskey
Environment variable: PROVAR_BROWSERSTACK_ACCESSKEY
Local testing with BrowserStack
BrowserStack provides the ability to test local web applications which are under development or not accessible outside of your corporate network by enabling Local Testing with BrowserStack and Local Testing with Automate.
Provar supports Local Testing with BrowserStack by configuring the desired capability with the browser provider configuration in Provar Desktop by adding the following desired capabilities:
browserstack.local
Use this capability to test locally-hosted websites on BrowserStack by setting the value to true. For example, “browserstack.local”:true
browserstack.localIdentifier
Use this capability to specify the unique local testing connection name for your test. For example, “browserstack.localIdentifier”:”Test12345”
Additional support is provided to override the browserStack.localidentifier value by passing a command line argument or by setting up a new system environment variable. This is helpful when executing tests as part of your CI/CD build pipeline using ANT. To override the browserStack.localidentifier, set one of the following values in order of priority:
Command line argument: provar.browserstack.localidentifier
Environment variable: PROVAR_BROWSERSTACK_LOCALIDENTIFIER
Limitations
The following limitations currently exist in Provar’s implementation of BrowserStack.
Accessing Chrome profiles
Normally, when Provar’s test execution happens locally, Provar users can specify the Google Chrome profile that should be used in the execution. This is not supported when executing tests over BrowserStack as the execution will be happening at the remote node. Due to this limitation, you’ll need to re-provide a password and verification token when executing over BrowserStack, or your IP will need to be whitelisted. Salesforce should know from where the request is coming so it can provide login access to execute the tests.
Accessing locally stored files
Normally Provar allows you to download a file locally to perform actions such as assertions. This is not supported when executing tests on BrowserStack because the remote node will not be able to access the locally downloaded file, so any tests which use locally downloaded files will not run successfully.
If you are affected by either of these limitations please contact Provar support directly for advice.
Access world-class customer support at the Provar Success Portal
Providing ongoing support is part of our promise to help you deliver robust, scalable and repeatable testing to achieve release agility, drive down system errors and get the maximum return on your Salesforce investment. Please contact us for more information. If you have any questions regarding BrowserStack, please get in touch with us and we would be happy to help. To raise a case, simply log into the Provar Success Portal and click View/Raise Case.
- General information
- Licensing Provar
- Provar trial guide and extensions
- Using Provar
- API testing
- Behavior-driven development
- Creating and importing projects
- Creating test cases
- Custom table mapping
- Functions
- Debugging tests
- Defining a namespace prefix on a connection
- Defining proxy settings
- Environment management
- Exporting test cases into a PDF
- Exporting test projects
- Override auto-retry for Test Step
- Managing test steps
- Namespace org testing
- Provar desktop
- Provar Test Builder
- Refresh and Recompile
- Reload Org Cache
- Reporting
- Running tests
- Searching Provar with find usages
- Secrets management and encryption
- Setup and teardown test cases
- Tags and Service Level Agreements (SLAs)
- Test cycles
- Test plans
- Testing browser options
- Tooltip testing
- Using the Test Palette
- Using custom APIs
- Callable tests
- Data-driven testing
- Page objects
- Block locator strategies
- Introduction to XPaths
- Creating an XPath
- JavaScript locator support
- Label locator strategies
- Maintaining page objects
- Mapping non-Salesforce fields
- Page object operations
- ProvarX™
- Refresh and reselect field locators in Test Builder
- Using Java method annotations for custom objects
- Applications testing
- DevOps
- Introduction to test scheduling
- Apache Ant
- Configuration for Sending Emails via the Provar Command Line Interface
- Continuous integration
- AutoRABIT Salesforce DevOps in Provar Test
- Azure DevOps
- Running a Provar CI Task in Azure DevOps Pipelines
- Configuring the Provar secrets password in Microsoft Azure Pipelines
- Parallel Execution in Microsoft Azure Pipelines Using Multiple build.xml Files
- Parallel Execution in Microsoft Azure Pipelines using Targets
- Parallel execution in Microsoft Azure Pipelines using Test Plans
- Bitbucket Pipelines
- CircleCI
- Copado
- Docker
- Flosum
- Gearset DevOps CI/CD
- GitHub Actions
- Integrating GitHub Actions CI to Run Provar CI Task
- Remote Trigger in GitHub Actions
- Parameterization using Environment Variables in GitHub Actions
- Parallel Execution in GitHub Actions using Multiple build.xml Files
- Parallel Execution in GitHub Actions using Targets
- Parallel Execution in GitHub Actions using Test Plan
- Parallel Execution in GitHub Actions using Job Matrix
- GitLab Continuous Integration
- Travis CI
- Jenkins
- Execution Environment Security Configuration
- Provar Jenkins Plugin
- Parallel Execution
- Running Provar on Linux
- Reporting
- Salesforce DX
- Git
- Team foundation server
- Version control
- Salesforce testing
- Adding a Salesforce connection
- Assert Page Error Messages on Add/Edit Product
- Dynamic Forms
- Internationalization support
- List and table testing
- Salesforce Release Updates
- Salesforce Lightning Testing
- Salesforce Lightning Web Component (LWC) locator support
- Salesforce console testing
- Visualforce Testing
- Performance Best Practices
- Testing best practices
- Troubleshooting
- Browsers
- Configurations and permissions
- Connections
- DevOps
- Error messages
- Administrator has blocked access to client
- JavascriptException: Javascript error
- macOS Big Sur Upgrade
- Resolving failed to create ChromeDriver error
- Resolving Jenkins license missing error
- Resolving metadata timeout errors
- Test execution fails – Firefox not installed
- Update to Opportunity field validation behaviour
- Licensing, installation and firewalls
- Memory
- Test Builder and test cases
- Release notes