Next-Gen App & Browser Testing Cloud
Trusted by 2 Mn+ QAs & Devs to accelerate their release cycles

A step-by-step JUnit setup guide covering Java installation, environment variable configuration, and adding JUnit 5 to IntelliJ IDEA.
Sri Priya
Author
March 30, 2026
This article is a part of our Learning Hub. For more in-depth resources, check out our hub on JUnit Tutorial.
JUnit is a widely used unit testing framework. When combined with Selenium, it enhances the web application testing process. JUnit utilizes annotations to identify test methods and supports various assertions, test suites, and test maintenance.
JUnit setup involves installing Java, configuring environment variables, and adding the JUnit 5 framework to your build tool or IDE.
This chapter walks you through each step: from downloading the JDK to writing and running your first unit test in IntelliJ IDEA, with optional cloud execution on TestMu AI.
Overview
How To Install and Setup JUnit?
How To Use JUnit With IntelliJ IDEA?
JUnit is a popular open-source framework for automating unit testing in Java. It follows the principle of testing first and coding second, meaning you write tests before implementing the code they validate.
Here are the core reasons JUnit is widely adopted for unit testing in Java projects:
Watch the video below for a quick walkthrough of setting up JUnit and running your first test.
Note: Run web app testing using the JUnit framework across 3,000+ browser and OS combinations on TestMu AI. Try TestMu AI free!
JUnit 5 is composed of three sub-projects, each with a distinct role in the testing pipeline.

For a deeper look at each module and the extension model, see Chapter 2: JUnit 5 Features and Extensions.
The following steps walk you through downloading JUnit 5 and configuring your Windows environment. Start with the prerequisites:
Installing the Java Development Kit (JDK) is essential to setup JUnit for automation testing. This JDK enables you to code and run Java programs. It is recommended that you install the latest version.
Below are the steps to guide you on installing Java on Windows.
java -version to verify it.You have successfully setup Java on your machine by following the steps above. Next, let’s proceed to setup the JUnit environment variable.
With Java installed, the next step is to download JUnit 5 and add the environment variables your system needs to locate the framework.
Follow these steps to download the JUnit 5 and Hamcrest JARs:
With both JARs saved to C:JUnit, set the JUNIT_HOME environment variable so your system can locate the framework:
With those environment variables in place, you are ready to configure JUnit inside IntelliJ IDEA.
With JUnit installed and your environment variables configured, the next step is to set up IntelliJ IDEA so you can write and run your tests from within the IDE.
IntelliJ IDEA is a popular cross-platform Integrated Development Environment (IDE) developed by JetBrains. It supports Java, Kotlin, Scala, Groovy, and various other languages through plugins, including PHP, Python, Ruby, and JavaScript.
IntelliJ IDEA is suitable for various development needs and is available in an Apache-licensed Community Edition and a proprietary Commercial Edition.
IntelliJ IDEA simplifies writing, executing, and managing JUnit tests through built-in project scaffolding and dependency management. Follow the steps below to configure your project.
To get started, follow these steps for the setup of JUnit in IntelliJ:
Alternatively, If you’re using Maven or Gradle, add JUnit dependencies to your pom.xml or build.gradle file respectively.
For Maven:
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.14.4</version> <!-- Use the latest version -->
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.14.4</version> <!-- Use the latest version -->
<scope>test</scope>
</dependency>
</dependencies>
For Gradle:
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.14.4' // Use the latest version
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.14.4' // Use the latest version
}
Note: If not using a build tool, download the JUnit JAR files and add them to your project’s classpath.
After completing the setup of JUnit, it is time to create your first test. Writing a basic code will help you understand how JUnit works and validate that your setup is correct.
The below class has a method that converts Fahrenheit to Celsius.
package com.example.junit;
public class Class1 {
public double conversion(double temparature, String unit){
if(unit.equals("F")){
return (temparature-32)*(5.0/9.0);
}else{
return (temparature *(9.0/5.0))+32;
}
}
}
Now, let us write the simple JUnit test class to test the conversion() in Class 1.
package com.example.junit;
import org.junit.Test;
import static junit.framework.Assert.assertEquals;
public class JunitTestClass1 {
@Test
public void testconversion(){
//Given
Class1 classunderTest=new Class1();
//When
double temparature=80.0d;
String unit="";
double result = classunderTest.conversion(temparature, unit);
//Then
//assertions
assertEquals(176.00d,result,0.0);
}
}
The JUnit annotation @Test tells JUnit that the public void method it is attached to can be run as a test case.
We split the JUnit test class into three parts: Given, When, and Then.
These three parameters work as follows:
To learn more about JUnit assertions, watch the video below.
Now that you have written and understood your first JUnit test, let's look at how to add JUnit to IntelliJ as an external library if you prefer not to use a build tool.
There are two ways to setup JUnit on IntelliJ IDEA:
Here is an example snippet from pom.xml showing how to include local dependencies:
<dependencies>
[...]
<dependency>
<groupId>hamcrest</groupId>
<artifactId>hamcrest</artifactId>
<version>2.2</version>
<scope>system</scope>
<systemPath>C:JUnithamcrest-2.2.jar</systemPath>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<scope>system</scope>
<systemPath>C:JUnitjunit.jar</systemPath>
</dependency>
[...]
</dependencies>
Double-click on any JUnit import statement to verify that the local dependencies are correctly included (e.g., import org.junit.AfterClass;). This will confirm if the local dependencies are fulfilled as specified in the pom.xml.
Dependencies can be added at three levels in IntelliJ IDEA:
To install JUnit and Hamcrest JAR files as external libraries at the ‘Project Level’:
With the above steps, you have completed the setup of JUnit in IntelliJ. Now, let’s learn how to execute your JUnit tests within the IntelliJ platform.
To run JUnit tests in IntelliJ IDEA, follow the below steps:

JUnit 5 supports parallel execution of tests, which speeds up the execution of the test suite when there are a large number of tests.
There are two ways to achieve parallel execution in JUnit 5: at the class and method levels. Below, you can see how to configure parallel execution for both approaches.
To run JUnit tests in parallel on TestMu AI's cloud grid, enable parallel execution in your Maven configuration and configure the execution strategy in junit-platform.properties.
<properties>
<junit.jupiter.execution.parallel.enabled>true</junit.jupiter.execution.parallel.enabled>
</properties>
junit.jupiter.execution.parallel.config.strategy=fixed
junit.jupiter.execution.parallel.config.fixed.parallelism=4
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
class ParallelMethodTest {
@Test
@Execution(ExecutionMode.CONCURRENT)
void test1() {
// test logic
}
}
The following class implements those five steps as a JUnit test running on TestMu AI's cloud grid. It sets up a RemoteWebDriver session, navigates to the eCommerce Playground, performs the search, and asserts the page title, exactly as described above.
package com.test.junitdemo;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.jupiter.api.parallel.Execution;
import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.RemoteWebDriver;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;
import static org.junit.jupiter.api.parallel.ExecutionMode.CONCURRENT;
@Execution(CONCURRENT)
public class JUnitDemoClass {
public String username = "your_username";
public String accesskey = "your_access_key";
public static RemoteWebDriver driver;
public String gridURL = "@hub.testmuai.com/wd/hub";
static String URL = "https://ecommerce-playground.lambdatest.io/";
@Before
public void setup() throws MalformedURLException {
ChromeOptions browserOptions = new ChromeOptions();
browserOptions.setPlatformName("Windows 11");
browserOptions.setBrowserVersion("126.0");
HashMap<String, Object> ltOptions = new HashMap<String, Object>();
ltOptions.put("username", username);
ltOptions.put("accessKey", accesskey);
ltOptions.put("project", "JUnit Test");
ltOptions.put("w3c", true);
browserOptions.setCapability("LT:Options", ltOptions);
try {
driver = new RemoteWebDriver(new URL("https://" + username + ":" + accesskey + gridURL), browserOptions);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
@Test
public void searchTest() throws InterruptedException {
driver.navigate().to(URL);
driver.manage().window().maximize();
try {
driver.findElement(By.xpath("(//input[@placeholder='Search For Products'])[1]")).sendKeys("iPhone");
driver.findElement(By.xpath("//button[normalize-space()='Search']")).click();
String actualTitle = driver.getTitle();
Assert.assertEquals("Search - iPhone", actualTitle);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
@After
public void tearDown() {
driver.quit();
}
}
Setting up JUnit gives your Java project a reliable foundation for automated unit and integration testing.
You now have Java and JUnit 5 installed, environment variables configured, IntelliJ IDEA set up with the correct dependencies, and a working test class that validates logic locally and on the cloud.
To scale beyond your local machine, run your JUnit tests on TestMu AI's cloud test automation platform, which gives you access to 3,000+ browser and OS combinations without maintaining local infrastructure.
The TestMu AI Selenium documentation walks you through connecting your JUnit test suite to the cloud grid in minutes.
Continue your JUnit learning with the full JUnit tutorial series, where the next articles cover JUnit annotations, assertions, test suites, and CI/CD integration.
Note: AI assistance was used in researching and drafting this article. Sri Priya, Community Contributor at TestMu AI with expertise in Automation Testing and Test-Driven Development (TDD), verified every statistic, link, and product claim against primary sources before publication, following our editorial process and AI use policy.
Did you find this page helpful?
More Related Hubs
TestMu AI forEnterprise
Get access to solutions built on Enterprise
grade security, privacy, & compliance