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.

Report an issue

Quickstart

Make sure you have the below tools available already

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

Getting Started for JUnit 5

Please refer to Getting Started from the JUnit 5 official documentation.

Note: You can use junit-platform-console-standalone.jar in projects that manually manage their dependencies similar to the plain-old JAR known from JUnit 4.

Getting Started for JUnit 4

Please refer to Download and Install from the JUnit 4 official documentation.

Getting Started for TestNG

Please refer to TestNG Docs from the TestNG official documentation.

Run|Debug CodeLens

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. Select them to 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

  • For a quick peek of the test status or results, you can see them in the Test Explorer directly.

Test Status in Explorer

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

JUnit5 Support

The JUnit 5 support covers frequently used annotations such as @DisplayName, @ParameterizedTest, @TestFactory, @TestTemplate, and @Nested. It also supports meta-annotations and composed annotations.

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.