Testing Java with Visual Studio Code

Testing Java in Visual Studio Code is enabled by the Java Test Runner extension. It's a lightweight extension to run and debug Java test cases. The extension supports the following test frameworks:

Note: More information about the test frameworks can be found at JUnit and TestNG.

The Java Test Runner works with the Language Support for Java by Red Hat and Debugger for Java extensions to provide the following features:

  • Run/Debug test cases
  • Customize test configurations
  • View test report
  • View tests in Test Explorer
  • Show test logs

Install the Java Test Runner

If you run into any issues when using the features below, you can contact us by clicking the Report an issue button below.

Quickstart

Make sure you have the below tools available already

You may refer to Java Extensions to set up the environment.

To get started, visit JUnit 4 Getting Started, JUnit 5 User Guide, and TestNG Doc.

When you open a project with test cases from supported frameworks, Test Runner will be activated and you will find Run|Debug on the CodeLens of your test functions. Click on the CodeLens to run the individual test case. You can also access and run a group of test cases from the Test Explorer. For more information on debugging test cases, see Debugging Java. Here's a brief session with TestNG:

Run/Debug Test Cases

Run from Codelens

  • The extension will generate Run Test and Debug Test shortcuts (also known as CodeLens) above the class and method definition. Simply click on them will start running or debugging the target test cases.

Note: If you cannot see the CodeLens in your editor, please refer to this issue comment as a workaround.

Test Explorer

Run from Explorer

  • The Test Explorer is the place to show all the test cases in your project. You can also run/debug your test cases from here.
  • Click the node in the Test Explorer will navigate to the location of the source code.

Note: If the Test Explorer is empty, please refer to this issue comment as a workaround.

Customize Test Configurations

Configuration

  • Sometimes you may want to customize the configuration for running the test cases. To achieve this, you can add it into your workspace settings under the section: java.test.config.

Note: More details can be found in Run with Configuration.

View Test Report

Status Bar

  • After running/debugging the test cases, the test report is opened automatically. You can also see the final results in the status bar, by clicking on it to show the Test Report.
  • You can also click the ✔️ or ❌ mark in the CodeLens to open the Test Report.

Report Navigation

  • You can navigate to the source location of the target test case by clicking the navigate button.

JUnit5 Support

The JUnit 5 support also covers frequently used annotations such as @DisplayName, @ParameterizedTest, @TestFactory, and @Nested.

DisplayName annotation

ParameterizedTest annotation

FAQ

If you meet any problem when using the extension, you can refer to the FAQ to check if there is an answer to your problem.

More Information

Visit the GitHub repository of the Java Test Runner for more details on commands and settings.

Next steps

Read on to find out about:

  • Debugging - Find out how to debug your Java project with VS Code.
  • Java Extensions - Learn about more useful Java extensions for VS Code.