Skip to main content

Test Observability on JUnit4

Quick start guide to integrate BrowserStack Test Observability with JUnit4

Prerequisites

  • You have a JUnit4 test suite.
  • Maven is installed on your machine, its environment variables are set, and its bin is added to system path, $PATH.
  • You may run your tests on BrowserStack Automate or even on any other cloud provider or even locally.
  • Your tests can be unit / integration / functional or of any nature.
  • Cucumber-Java v5+ (for Cucumber-JUnit4), Java v8+ (If using Gradle, Java v9+ is required), Selenium v2.5+ (JSON Wire / W3C).

Integrate with Test Observability

You can use BrowserStack Test Observability both when you’re using BrowserStack’s devices and browsers to run your functional end-to-end tests and also if you’re running tests locally on your laptop/CI system or even when you’re using some other cloud provider.

Not only that, Test Observability is agnostic to the type of testing and hence you could also integrate it with your unit or integration test suite written using JUnit4.

Choose JUnit4 or Cucumber-JUnit4 depending on your test setup.

Please select your setup below to get started with an awesome debugging experience with Test Observability:

To start using BrowserStack Test Observability with your existing setup of Junit4 tests running on BrowserStack Automate, you’d need to integrate with browserstack-java-sdk (if not already done). Follow one of the methods below to integrate the SDK and start using Test Observability:

If you’re an existing browserstack-java-sdk user, you can skip the steps below. However, ensure that you’ve specified static names (names should not change across build runs) for projectName and buildName in the browserstack.yml file in your project. Also, restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Install BrowserStack plugin

On the Eclipse toolbar, click Help > Eclipse Marketplace. In the Eclipse Marketplace, search for BrowserStack > click Install > Finish.

Search for BrowserStack plugin

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Eclipse Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Eclipse Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information.

Install BrowserStack plugin

Click IntelliJ IDEA > Preferences > Plugins. Search for BrowserStack and click Install.

Intellij IDEA Configuration

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Intellij IDEA Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Intellij IDEA Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information right on this dashboard.

Set BrowserStack credentials

Copy icon Copy snippet
Copy icon Copy snippet

Saving your BrowserStack credentials as environment variables makes it easier to run your test suite from your local or CI environment.

Install BrowserStack SDK using Maven Archetype

Copy icon Copy snippet
Copy icon Copy snippet

Maven Archetype provides a template to quickly configure your project. Copy & run the adjacent command on your terminal/command prompt to add browserstack-java-sdk dependency in your pom.xml and browserstack.yml config file in your project.

Make changes in your browserstack.yml config file

Once you have installed the SDK, a browserstack.yml config file will be created at the root level of your project. This file holds all the required capabilities to run tests on BrowserStack.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Make sure you copy the contents of the below config file and set it in your project’s browserstack.yml file:

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Run your test suite with Test Observability

Copy icon Copy snippet

Run the adjacent command from the project’s root directory to run your test suite with BrowserStack.

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information.

Verify your pom.xml entries

As you’re an existing browserstack-java-sdk user, you must already have the following entry in your pom.xml file of your project. Please verify that the following exists:

pom.xml
Copy icon Copy snippet

Install the latest SDK version

The previous step outlines that your pom.xml must have the LATEST tag against the browserstack-java-sdk. Now, run the below command to ensure that the latest version is installed:

Terminal
Copy icon Copy snippet


Ensure that you have browserstack-java-sdk version 1.12.3 or higher.

Verify your browserStack.yml config file

As you’re an existing browserstack-java-sdk user, you must already be having a browserstack.yml config file at the root level of your project.

Test Observability mandatorily needs the following four configurations in the file. You need not change anything but you have to ensure that the values of the buildName and projectName variables are not changing across different build runs.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Run your test suite with Test Observability

Copy icon Copy snippet

Run the following command from the project’s root directory to run your test suite with BrowserStack.

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information right on this dashboard.

To start using BrowserStack Test Observability with your existing setup of Junit4 tests running on your local laptop or CI or even on any other cloud provider, you’d need to integrate the browserstack-java-sdk. Follow one of the methods below to integrate the SDK and start using Test Observability:

BrowserStack Test Observability works with any kind of automation tests. Use it with your unit or integration test suites and also your end-to-end functional test suite.

Install BrowserStack plugin

On the Eclipse toolbar, click Help > Eclipse Marketplace. In the Eclipse Marketplace, search for BrowserStack > click Install > Finish.

Search for BrowserStack plugin

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Eclipse Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Eclipse Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information.

Install BrowserStack plugin

Click IntelliJ IDEA > Preferences > Plugins. Search for BrowserStack and click Install.

Intellij IDEA Configuration

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Intellij IDEA Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Intellij IDEA Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information.

Set BrowserStack credentials

Copy icon Copy snippet
Copy icon Copy snippet

Saving your BrowserStack credentials as environment variables makes it easier to run your test suite from your local or CI environment.

Install BrowserStack SDK using Maven Archetype

Copy icon Copy snippet
Copy icon Copy snippet

Maven Archetype provides a template to quickly configure your project. Copy & run the following command on your terminal/command prompt to add browserstack-java-sdk dependency in your pom.xml and browserstack.yml config file in your project.

Make changes in your browserstack.yml config file

Once you have installed the SDK, a browserstack.yml config file will be created at the root level of your project. This file holds all the required capabilities to run tests on BrowserStack.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Make sure you copy the contents of the below config file and set it in your project’s browserstack.yml file:

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Run your test suite with Test Observability

Copy icon Copy snippet

Run the following command from the project’s root directory to run your test suite with BrowserStack.

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information.

Please select your setup below to get started with an awesome debugging experience with Test Observability:

To start using BrowserStack Test Observability with your existing setup of Cucumber-JUnit4 tests running on BrowserStack Automate or App Automate, you’d need to integrate with the browserstack-java-sdk (if not already done). Use one of the following methods to integrate the SDK and start using Test Observability:

If you’re an existing browserstack-java-sdk user, you can skip the steps below. However, ensure that you’ve specified static names (names should not change across build runs) for projectName and buildName in the browserstack.yml file in your project. Also, restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Install BrowserStack plugin

On the Eclipse toolbar, click Help > Eclipse Marketplace. In the Eclipse Marketplace, search for BrowserStack > click Install > Finish.

Search for BrowserStack plugin

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Eclipse Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Framework: cucumber-junit4
BrowserStack User Name: YOUR_USERNAME
BrowserStack Access Key: YOUR_ACCESS_KEY

Eclipse Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information right on this dashboard.

Install BrowserStack plugin

Click IntelliJ IDEA > Preferences > Plugins. Search for BrowserStack and click Install.

Intellij IDEA Configuration

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Intellij IDEA Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Framework: cucumber-junit4
BrowserStack User Name: YOUR_USERNAME
BrowserStack Access Key: YOUR_ACCESS_KEY

Intellij IDEA Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information right on this dashboard.

Set BrowserStack credentials

Saving your BrowserStack credentials as environment variables makes it easier to run your test suite from your local or CI environment.

Copy icon Copy snippet
Copy icon Copy snippet
Copy icon Copy snippet

Install BrowserStack SDK using Maven Archetype

Maven Archetype provides a template to quickly configure your project. Copy & run the following command on your terminal/command prompt to add browserstack-java-sdk dependency in your pom.xml and browserstack.yml config file in your project.

Copy icon Copy snippet
Copy icon Copy snippet


Please ensure that you now have at least browserstack-java-sdk v1.20.0 before proceeding.

Make changes in your browserstack.yml config file

Once you have installed the SDK, a browserstack.yml config file will be created at the root level of your project. This file holds all the required capabilities to run tests on BrowserStack.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Make sure you copy the contents of the following config file and set it in your project’s browserstack.yml file:

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Run your test suite with Test Observability

Run the following command from the project’s root directory to run your test suite with BrowserStack.

Copy icon Copy snippet

Post build run completion, you will see the build URL of Test Observability. Alternatively, you can also navigate to your build run using Build Runs.

Verify your pom.xml entries

Since you’re an existing browserstack-java-sdk user, you must already have the following entry in your pom.xml file of your project. Please verify that the following exists:

pom.xml
Copy icon Copy snippet

Install the latest SDK version

The previous step outlines that your pom.xml must have the LATEST tag against the browserstack-java-sdk. Now, run the below command to ensure that the latest version is installed:

Terminal
Copy icon Copy snippet


Please ensure that you now have at least browserstack-java-sdk v1.20.0 before proceeding.

Verify your browserStack.yml config file

Since you’re an existing browserstack-java-sdk user, you must already be having a browserstack.yml config file at the root level of your project.

Test Observability mandatorily needs the following four configurations in the file. You need not change anything but you have to ensure that the values of the buildName and projectName variables are not changing across different build runs.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Run your test suite with Test Observability

Run the following command from the project’s root directory to run your test suite with BrowserStack.

Copy icon Copy snippet

Post build run completion, you will see the build URL of Test Observability. Alternatively, you can also navigate to your build run using Build Runs.

To start using BrowserStack Test Observability with your existing setup of Cucumber-JUnit4 tests running on your local laptop or CI or even on any other cloud provider, you’d need to integrate the browserstack-java-sdk. Use one of the following methods to integrate the SDK and start using Test Observability:

BrowserStack Test Observability works with any kind of automation tests. Use it with your unit or integration test suites and also your end-to-end functional test suite.

Install BrowserStack plugin

On the Eclipse toolbar, click Help > Eclipse Marketplace. In the Eclipse Marketplace, search for BrowserStack > click Install > Finish.

Search for BrowserStack plugin

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Eclipse Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Framework: cucumber-junit4
BrowserStack User Name: YOUR_USERNAME
BrowserStack Access Key: YOUR_ACCESS_KEY

Eclipse Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information right on this dashboard.

Install BrowserStack plugin

Click IntelliJ IDEA > Preferences > Plugins. Search for BrowserStack and click Install.

Intellij IDEA Configuration

Configure your test suite with BrowserStack SDK

BrowserStack plugin automatically adds the browserstack-java-sdk dependency to your pom.xml file and generates a browserstack.yml configuration file.

Right-click on your project folder > BrowserStack > select Integrate with Automate SDK.

Intellij IDEA Configuration

Select your Project Folder, Framework, and other BrowserStack Parameters, and then click Integrate.

Framework: cucumber-junit4
BrowserStack User Name: YOUR_USERNAME
BrowserStack Access Key: YOUR_ACCESS_KEY

Intellij IDEA Configuration

Update browserstack.yml file

Update the browserstack.yml file in the root folder of your test suite.

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. This is a deviation in approach as specified by BrowserStack Automate or App Automate as Test Observability will automatically identify different build runs.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

BrowserStack SDK is a very powerful tool that you can use to set the different browser/device combinations and parallelization. For more details, check out the Automate Integration guide.

Run your test suite

Run your tests as usual.

View results and insights on Test Observability dashboards

Post build run completion, you’ll be able to see the build run report along with all necessary debugging information right on this dashboard.

Set BrowserStack credentials

Saving your BrowserStack credentials as environment variables makes it easier to run your test suite from your local or CI environment.

Copy icon Copy snippet
Copy icon Copy snippet

Install BrowserStack SDK using Maven Archetype

Maven Archetype provides a template to quickly configure your project. Copy & run the following command on your terminal/command prompt to add browserstack-java-sdk dependency in your pom.xml and browserstack.yml config file in your project along with the required variables.

Copy icon Copy snippet
Copy icon Copy snippet


Please ensure that you now have at least browserstack-java-sdk v1.20.0 before proceeding.

Make changes in your browserstack.yml config file

Once you have installed the SDK, a browserstack.yml config file will be created at the root level of your project. This file holds all the required capabilities to run tests on BrowserStack.

Make sure you copy the contents of the below config file and set it in your project’s browserstack.yml file:

browserstack.yml
Copy icon Copy snippet

The projectName and buildName config must be static and not change across different runs of the same build. Different runs of the same build/job would be automatically identified by Test Observability.

Restrict the characters in your projectName and buildName to alphanumeric characters (A-Z, a-z, 0-9), underscores (_), colons (:), and hyphens (-). Any other character will be replaced with a space.

Run your test suite with Test Observability

Run the following command from the project’s root directory to run your test suite with BrowserStack.

Copy icon Copy snippet

Post build run completion, you will see the build URL of Test Observability. Alternatively, you can also navigate to your build run using Build Runs.

Visit Test Observability

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