Java-Tests mit Visual Studio Code
Das Testen von Java in Visual Studio Code wird durch die Erweiterung Test Runner for Java ermöglicht. Es handelt sich um eine schlanke Erweiterung zum Ausführen und Debuggen von Java-Testfällen.
Übersicht
Die Erweiterung unterstützt die folgenden Test-Frameworks
Der Test Runner for Java arbeitet mit den Erweiterungen Language Support for Java™ by Red Hat und Debugger for Java zusammen, um die folgenden Funktionen bereitzustellen:
- Testfälle ausführen/debuggen
- Testkonfigurationen anpassen
- Testbericht anzeigen
- Tests im Testing Explorer anzeigen
Voraussetzungen
- JDK (Version 1.8 oder höher)
- Visual Studio Code (Version 1.59.0 oder höher)
- Extension Pack for Java
Extension Pack for Java installieren
Projekteinrichtung
Hinweis: Wenn Sie Ihr Java-Testframework bereits in Ihrem Projekt eingerichtet haben, können Sie direkt zum Abschnitt Funktionen springen.
Testen aktivieren und Testframework-JARs zum Projekt hinzufügen
Ab der Version 0.34.0 des Test Runner for Java können Sie ein Testframework für Ihr nicht verwaltetes Ordnerprojekt (ein Projekt ohne Build-Tools) mit nur wenigen Schritten im Testing-Explorer aktivieren.
Hinweis: Derzeit unterstützt diese Funktion nur nicht verwaltete Ordner, die keine Testabhängigkeiten enthalten.
JUnit 4
Maven
Fügen Sie die folgende Konfiguration in Ihre pom.xml ein:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>(YOUR_JUNIT_VERSION)</version>
<scope>test</scope>
</dependency>
Gradle
Stellen Sie sicher, dass die folgenden Zeilen in Ihrer build.gradle hinzugefügt sind:
plugins {
java
}
dependencies {
testImplementation('junit:junit:(YOUR_JUNIT_VERSION)')
}
Nicht verwalteter Ordner
Wenn Ihr Projekt keine Build-Tools verwendet, können Sie JUnit 4 über den Testing-Explorer aktivieren oder indem Sie die folgenden JARs manuell herunterladen und zum Klassenpfad des Projekts hinzufügen (über die Einstellung java.project.referencedLibraries, weitere Informationen finden Sie unter Abhängigkeitsverwaltung).
Weitere Informationen zur Einrichtung von JUnit 4 finden Sie im offiziellen JUnit-Wiki.
JUnit 5
Das JUnit 5-Team stellt eine Sammlung von Beispielprojekten mit verschiedenen Build-Tools bereit. Besuchen Sie das junit5-sample Repository, falls Ihr Projekt Maven oder Gradle als Build-Tool verwendet.
Nicht verwalteter Ordner
Wenn Ihr Projekt keine Build-Tools verwendet, können Sie JUnit 5 über den Testing-Explorer aktivieren oder indem Sie die JAR-Datei junit-platform-console-standalone manuell in den Klassenpfad des Projekts einbinden (über die Einstellung java.project.referencedLibraries; weitere Informationen finden Sie unter Abhängigkeitsverwaltung).
TestNG
Maven
Fügen Sie die folgende Konfiguration in Ihre pom.xml ein:
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>(YOUR_TESTNG_VERSION)</version>
<scope>test</scope>
</dependency>
Gradle
Stellen Sie sicher, dass die folgenden Zeilen in Ihrer build.gradle hinzugefügt sind:
plugins {
java
}
dependencies {
testImplementation('org.testng:testng:(YOUR_TESTNG_VERSION)')
}
Nicht verwalteter Ordner
Wenn Ihr Projekt keine Build-Tools verwendet, können Sie TestNG über den Testing-Explorer aktivieren oder indem Sie die folgenden JARs manuell herunterladen und zum Klassenpfad des Projekts hinzufügen (über die Einstellung java.project.referencedLibraries; weitere Informationen finden Sie unter Abhängigkeitsverwaltung).
Funktionen
Testfälle ausführen/debuggen
Die Erweiterung "Test Runner for Java" generiert Verknüpfungen (die grüne Play-Schaltfläche) auf der linken Seite der Klassen- und Methodendefinitionen. Um die entsprechenden Testfälle auszuführen, klicken Sie auf die grüne Play-Schaltfläche. Sie können auch mit der rechten Maustaste darauf klicken, um weitere Optionen anzuzeigen.
Testing-Explorer
Der Testing-Explorer ist eine Baumansicht, die alle Testfälle in Ihrem Arbeitsbereich anzeigt. Sie können die Becher-Schaltfläche in der Aktivitätsleiste auf der linken Seite von Visual Studio Code auswählen, um ihn zu öffnen. Von dort aus können Sie Ihre Testfälle auch ausführen/debuggen und die Testergebnisse einsehen.
Testkonfigurationen anpassen
Manchmal möchten Sie möglicherweise die Konfiguration für die Ausführung Ihrer Testfälle anpassen. Hierzu können Sie die Konfiguration in Ihren Arbeitsbereichs-Einstellungen unter dem Abschnitt java.test.config hinzufügen.

Derzeit werden folgende Konfigurationen unterstützt:
- args: Legt die Befehlszeilenargumente fest, die an den Test-Runner übergeben werden.
- classPaths: Die in dieser Einstellung definierten Klassenpfade werden an die aufgelösten Klassenpfade angehängt.
- env: Gibt zusätzliche Umgebungsvariablen beim Ausführen der Tests über ein Schlüssel-Wert-Objekt an.
- envFile: Gibt den absoluten Pfad zu einer Datei an, die Definitionen für Umgebungsvariablen enthält.
- modulePaths: Die in dieser Einstellung definierten Modulpfade werden an die aufgelösten Modulpfade angehängt.
- name: Gibt den Namen des Konfigurationselements an. Sie können den Standardkonfigurationsnamen über die Einstellung
java.test.defaultConfigfestlegen. - preLaunchTask: Gibt das Label einer Aufgabe an, die in
tasks.json(im.vscode-Ordner des Arbeitsbereichs) definiert ist. Die Aufgabe wird vor dem Start des Tests gestartet. - sourcePaths: Gibt zusätzliche Quellpfade beim Debuggen der Tests an.
- vmArgs: Gibt zusätzliche Optionen und Systemeigenschaften für die JVM an.
- workingDirectory: Legt das Arbeitsverzeichnis für die Ausführung der Tests fest.
- testKind: Gibt das Ziel-Testframework für diese Testkonfiguration an. Unterstützte Werte sind
junit,testng. - filters: Gibt die Testfilter an.
- tags: Gibt die Tags an, die ein- oder ausgeschlossen werden sollen. Tags, die mit
!beginnen, werden ausgeschlossen. Hinweis: Diese Einstellung ist nur wirksam, wenntestKindaufjunitgesetzt ist.
- tags: Gibt die Tags an, die ein- oder ausgeschlossen werden sollen. Tags, die mit
Weitere Details finden Sie im vscode-java-test Wiki.
Testergebnisse anzeigen
Nach dem Ausführen/Debuggen der Testfälle wird der Status der zugehörigen Testelemente sowohl in den Editor-Dekorationen als auch im Testing-Explorer aktualisiert.
Sie können den Befehl Test: Peek Output ausführen, um die Ergebnisansicht anzuzeigen. Sie können die Links im Stack-Trace auswählen, um zum Quellort zu navigieren.
Tests generieren
Die Erweiterung bietet Funktionen, die Sie bei der Erstellung (Scaffolding) von Testfällen unterstützen. Sie finden diesen Eintrag im Kontextmenü des Editors. Wählen Sie Source Action... und dann Generate Tests....
Wenn Sie diese Quellaktion von Ihrem Hauptquellcode (Testobjekt) aus auslösen, werden Sie nach dem vollständig qualifizierten Namen der Testklasse und den zu testenden Methoden gefragt. Die Erweiterung generiert dann den Testcode für Sie.
Wenn Sie die Quellaktion von Ihrem Testquellcode aus auslösen, werden Sie gefragt, welche Arten von Testmethoden Sie hinzufügen möchten, einschließlich der Lebenszyklusmethoden und der Testmethode.
Test-Navigation
Die Erweiterung bietet Funktionen, die Ihnen bei der Navigation zwischen Ihren Tests und den Testobjekten helfen. Wenn sich Ihr Quellcode in src/main/java oder src/test/java befindet, finden Sie im Kontextmenü des Editors den Eintrag Go to Test oder Go to Test Subject.
Sie finden den Befehl auch in der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)), indem Sie nach Java: Go to Test suchen.
VS Code Test-Befehle
Es gibt weitere Testbefehle (z. B. Run Tests in Current File), die durch die Suche nach 'Test:' in der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) gefunden werden können.

VS Code Test-Einstellungen
Es gibt VS Code-Einstellungen speziell für das Testen, die durch die Suche nach 'testing' im Einstellungseditor (⌘, (Windows, Linux Ctrl+,)) gefunden werden können.

FAQ
Falls bei der Verwendung der Erweiterung Probleme auftreten, lesen Sie bitte die FAQ und unsere Issue-Liste, um zu prüfen, ob es bereits eine Lösung für Ihr Problem gibt.
Mitwirken und Feedback
Wenn Sie an Feedback oder einem direkten Beitrag zur Codebasis interessiert sind, lesen Sie bitte Contributing to Test Runner for Java, das Folgendes abdeckt:
Nächste Schritte
Lesen Sie weiter, um mehr über Folgendes zu erfahren:
- Debugging - Erfahren Sie, wie Sie Ihr Java-Projekt mit VS Code debuggen.
- Extensions for Java - Entdecken Sie weitere nützliche Java-Erweiterungen für VS Code.