🚀 VS Code で で入手しましょう!

Visual Studio Code での Java のテスト

Visual Studio Code での Java のテストは、Test Runner for Java 拡張機能によって有効になります。これは、Java テストケースを実行およびデバッグするための軽量な拡張機能です。

概要

この拡張機能は、次のテストフレームワークをサポートしています

Test Runner for Java は、Language Support for Java™ by Red Hat および Debugger for Java 拡張機能と連携して、次の機能を提供します

  • テストケースの実行/デバッグ
  • テスト構成のカスタマイズ
  • テストレポートの表示
  • Testing Explorer でのテストの表示

要件

Extension Pack for Java のインストール

プロジェクトのセットアップ

: プロジェクトで Java テストフレームワークをすでにセットアップしている場合は、機能セクションまでスキップできます。

テストを有効にし、テストフレームワーク JAR をプロジェクトに追加する

Test Runner for Java バージョン 0.34.0 以降では、Testing Explorer でいくつかの手順を実行するだけで、アンマネージドフォルダープロジェクト (ビルドツールを使用しないプロジェクト) のテストフレームワークを有効にできます

: 現在、この機能はテスト依存関係を含まないアンマネージドフォルダーのみをサポートしています。

JUnit 4

Maven

pom.xml に次の構成を追加します

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>(YOUR_JUNIT_VERSION)</version>
  <scope>test</scope>
</dependency>

Gradle

build.gradle に次の行が追加されていることを確認してください

plugins {
    java
}

dependencies {
    testImplementation('junit:junit:(YOUR_JUNIT_VERSION)')
}

アンマネージドフォルダー

プロジェクトでビルドツールを使用していない場合は、Testing Explorer を使用するか、次の JAR を手動でダウンロードしてプロジェクトのクラスパスに追加することで JUnit 4 を有効にできます (java.project.referencedLibraries 設定を使用、詳細については 依存関係管理 を確認してください)

JUnit 4 のセットアップ方法の詳細については、公式 JUnit Wiki を確認してください。

JUnit 5

JUnit 5 チームは、さまざまなビルドツールを使用したサンプルプロジェクトのコレクションを提供しています。プロジェクトで Maven または Gradle をビルドツールとして使用している場合は、junit5-sample リポジトリ を確認してください。

アンマネージドフォルダー

プロジェクトでビルドツールを使用していない場合は、Testing Explorer を使用するか、junit-platform-console-standalone JAR をプロジェクトのクラスパスに手動で含めることで JUnit 5 を有効にできます (java.project.referencedLibraries 設定を使用、詳細については 依存関係管理 を確認してください)。

TestNG

Maven

pom.xml に次の構成を追加します

<dependency>
  <groupId>org.testng</groupId>
  <artifactId>testng</artifactId>
  <version>(YOUR_TESTNG_VERSION)</version>
  <scope>test</scope>
</dependency>

Gradle

build.gradle に次の行が追加されていることを確認してください

plugins {
    java
}

dependencies {
    testImplementation('org.testng:testng:(YOUR_TESTNG_VERSION)')
}

アンマネージドフォルダー

プロジェクトでビルドツールを使用していない場合は、Testing Explorer を使用するか、次の JAR を手動でダウンロードしてプロジェクトのクラスパスに追加することで TestNG を有効にできます (java.project.referencedLibraries 設定を使用、詳細については 依存関係管理 を確認してください)

機能

テストケースの実行/デバッグ

Test Runner for Java 拡張機能は、クラスとメソッド定義の左側にショートカット (緑色の再生ボタン) を生成します。ターゲットテストケースを実行するには、緑色の再生ボタンを選択します。右クリックして、その他のオプションを表示することもできます。

Testing Explorer

Testing Explorer は、ワークスペース内のすべてのテストケースを表示するツリービューです。Visual Studio Code の左側のアクティビティバーにあるビーカーボタンを選択して開くことができます。テストケースの実行/デバッグや、テスト結果の表示もそこから行うことができます。

テスト構成のカスタマイズ

テストケースを実行するための構成をカスタマイズしたい場合があります。これを実現するには、ワークスペースの 設定java.test.config セクションに構成を追加できます。

Customize test configurations

現在サポートされている構成は次のとおりです

  • args: テストランナーに渡されるコマンドライン引数を指定します。
  • classPaths: この設定で定義されたクラスパスは、解決されたクラスパスに追加されます。
  • env: キーと値のオブジェクトを使用して、テスト実行時の追加の環境変数を指定します。
  • envFile: 環境変数定義を含むファイルへの絶対パスを指定します。
  • modulePaths: この設定で定義されたモジュールパスは、解決されたモジュールパスに追加されます。
  • name: 構成項目の名前を指定します。java.test.defaultConfig 設定を使用して、デフォルトの構成名を設定できます。
  • preLaunchTask: tasks.json (ワークスペースの .vscode フォルダー内) で指定されたタスクのラベルを指定します。タスクはテスト開始前に起動されます。
  • sourcePaths: テストのデバッグ時に追加のソースパスを指定します。
  • vmArgs: JVM の追加オプションとシステムプロパティを指定します。
  • workingDirectory: テスト実行時の作業ディレクトリを指定します。
  • testKind: このテスト構成のターゲットテストフレームワークを指定します。サポートされている値は junittestng です。
  • filters: テストフィルターを指定します。
    • tags: 含めるまたは除外するタグを指定します。プレフィックスとして ! を持つタグは除外されます。注: この設定は testKindjunit に設定されている場合にのみ有効になります

詳細については、vscode-java-test Wiki を参照してください。

テスト結果の表示

テストケースの実行/デバッグ後、関連するテスト項目の状態は、エディターの装飾と Testing Explorer の両方で更新されます。

テスト: 出力をピーク コマンドをトリガーして、結果ビューをピークできます。スタックトレースのリンクを選択して、ソースの場所に移動できます。

テストの生成

この拡張機能は、テストケースの足場を作成するのに役立つ機能を提供します。エディターのコンテキストメニューでエントリを見つけることができます。ソースアクション... を選択し、次に テストの生成... を選択します。

メインソースコード (テスト対象) からこのソースアクションをトリガーすると、テストクラスの完全修飾名とテストするメソッドを尋ねられます。拡張機能は、テストコードを生成します

テストソースコードからソースアクションをトリガーすると、追加するテストメソッドの種類を尋ねられます。ライフサイクルメソッドとテストメソッドを含みます

テストナビゲーション

この拡張機能は、テストとテスト対象の間をナビゲートするのに役立つ機能を提供します。ソースコードが src/main/java または src/test/java に含まれている場合は、エディターのコンテキストメニューで テストへ移動 または テスト対象へ移動 という名前のエントリを見つけることができます

コマンドパレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) で Java: テストへ移動 を検索してコマンドを見つけることもできます。

VS Code テストコマンド

コマンドパレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) で 'Test:' を検索すると、他のテストコマンド (たとえば、現在のファイルのテストを実行) を見つけることができます。

Testing commands in the Command Palette

VS Code テスト設定

設定エディター (⌘, (Windows、Linux Ctrl+,)) で 'testing' を検索すると、テストに固有の VS Code 設定を見つけることができます。

Testing settings in the Settings editor

FAQ

拡張機能の使用中に問題が発生した場合は、FAQ および issue list を確認して、問題の回答があるかどうかを確認できます。

貢献とフィードバック

フィードバックの提供やコードベースへの直接的な貢献に関心がある場合は、Test Runner for Java への貢献 をお読みください。これには、以下が含まれています

次のステップ

詳細については、以下をお読みください

  • デバッグ - VS Code で Java プロジェクトをデバッグする方法について説明します。
  • Java 用拡張機能 - VS Code 用のさらに役立つ Java 拡張機能について学びます。