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 拡張機能と連携して、次の機能を提供します。
- テストケースの実行/デバッグ
- テスト構成のカスタマイズ
- テストレポートの表示
- テストエクスプローラーでのテストの表示
要件
- JDK (バージョン 1.8 以降)
- Visual Studio Code (バージョン 1.59.0 以降)
- Extension Pack for Java
Extension Pack for Javaをインストールする
プロジェクトのセットアップ
注: プロジェクトで既に Java テスト フレームワークをセットアップしている場合は、機能のセクションに進んでください。
テストを有効にし、テスト フレームワークの JAR をプロジェクトに追加する
Test Runner for Java バージョン 0.34.0 以降では、テスト エクスプローラーでわずか数ステップで、非管理フォルダー プロジェクト (ビルドツールがないプロジェクト) のテスト フレームワークを有効にできます。
注: 現在、この機能はテストの依存関係を含まない非管理フォルダーのみをサポートしています。
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)')
}
非管理フォルダー
プロジェクトがビルド ツールを使用していない場合は、テスト エクスプローラーを介して JUnit 4 を有効にするか、手動で次の JAR をダウンロードしてプロジェクトのクラスパスに追加します (java.project.referencedLibraries
の設定を介して。詳細については、依存関係の管理を確認してください)。
JUnit 4 のセットアップ方法の詳細については、公式 JUnit Wiki を確認できます。
JUnit 5
JUnit 5 チームは、さまざまなビルド ツールを使用したサンプル プロジェクトのコレクションを提供しています。プロジェクトで Maven または Gradle をビルド ツールとして使用している場合は、junit5-sample リポジトリ を確認してください。
非管理フォルダー
プロジェクトでビルドツールを使用しない場合は、テストエクスプローラーを介して JUnit 5 を有効にするか、junit-platform-console-standalone JAR を手動でプロジェクトのクラスパスに含めます (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)')
}
非管理フォルダー
プロジェクトがビルド ツールを使用していない場合は、テスト エクスプローラーを介して TestNG を有効にするか、手動で次の JAR をダウンロードしてプロジェクトのクラスパスに追加します (java.project.referencedLibraries
の設定を介して。詳細については、依存関係の管理を確認してください)。
機能
テストケースの実行/デバッグ
Test Runner for Java 拡張機能は、クラスとメソッド定義の左側にショートカット (緑色の再生ボタン) を生成します。対象のテスト ケースを実行するには、緑色の再生ボタンを選択します。また、右クリックして他のオプションを表示することもできます。
テスト エクスプローラー
テスト エクスプローラーは、ワークスペース内のすべてのテスト ケースを表示するツリー ビューです。Visual Studio Code の左側のアクティビティ バーにあるビーカー ボタンを選択して開くことができます。そこからテスト ケースを実行/デバッグしたり、テスト結果を表示したりすることもできます。
テスト構成のカスタマイズ
テストケースを実行するための構成をカスタマイズしたい場合があります。これを実現するには、ワークスペースの設定の java.test.config
セクションに構成を追加します。
現在サポートされている構成は次のとおりです。
- args: テスト ランナーに渡されるコマンドライン引数を指定します。
- classPaths: この設定で定義されたクラスパスは、解決されたクラスパスに追加されます。
- env: キーと値のオブジェクトを介して、テスト実行時に追加の環境変数を指定します。
- envFile: 環境変数定義を含むファイルへの絶対パスを指定します。
- modulePaths: この設定で定義されたモジュールパスは、解決されたモジュールパスに追加されます。
- name: 構成アイテムの名前を指定します。
java.test.defaultConfig
を設定して、既定の構成名を指定できます。 - preLaunchTask:
tasks.json
(ワークスペースの.vscode
フォルダー内) で指定されたタスクのラベルを指定します。このタスクは、テストの開始前に起動されます。 - sourcePaths: テストのデバッグ時に追加のソース パスを指定します。
- vmArgs: JVM の追加オプションとシステム プロパティを指定します。
- workingDirectory: テスト実行時の作業ディレクトリを指定します。
- testKind: このテスト構成の対象となるテスト フレームワークを指定します。サポートされている値は
junit
、testng
です。 - filters: テストフィルターを指定します。
- tags: 含めるまたは除外するタグを指定します。プレフィックスとして
!
を持つタグは除外されます。注: この設定は、testKind
がjunit
に設定されている場合にのみ有効です。
- tags: 含めるまたは除外するタグを指定します。プレフィックスとして
詳細については、vscode-java-test Wiki を参照してください。
テスト結果の表示
テスト ケースを実行/デバッグした後、関連するテスト項目の状態がエディターの装飾とテスト エクスプローラーの両方で更新されます。
Test: Peek Output コマンドをトリガーして、結果ビューを覗き見できます。スタック トレース内のリンクを選択して、ソースの場所に移動できます。
テストを生成する
この拡張機能は、テスト ケースのひな形を作成するのに役立つ機能を提供します。エディターのコンテキスト メニューにエントリがあります。ソース アクション... を選択し、テストを生成... を選択します。
メインのソース コード (テスト対象) からこのソース アクションをトリガーすると、テスト クラスの完全修飾名とテストするメソッドを尋ねられます。その後、拡張機能がテスト コードを生成します。
テストのソースコードからソースアクションをトリガーすると、追加したいテストメソッドの種類を尋ねられます。ライフサイクルメソッドとテストメソッドを含みます。
テストのナビゲーション
この拡張機能は、テストとテスト対象の間を移動するのに役立つ機能を提供します。ソース コードが src/main/java
または src/test/java
に含まれている場合、エディターのコンテキスト メニューに テストへ移動 または テスト対象へ移動 という名前のエントリがあります。
コマンド パレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) で Java: Go to Test を検索してコマンドを見つけることもできます。
VS Code のテスト コマンド
コマンド パレット (⇧⌘P (Windows、Linux Ctrl+Shift+P)) で 'Test:' を検索すると、他にもテスト関連のコマンド (例: 現在のファイルでテストを実行) が見つかります。
VS Code のテスト設定
設定エディター (⌘, (Windows、Linux Ctrl+,)) で 'testing' を検索すると、テストに固有の VS Code 設定が見つかります。
FAQ
拡張機能の使用中に問題が発生した場合は、FAQ と issue リスト を確認して、問題の解決策があるかどうかを確認できます。
貢献とフィードバック
フィードバックの提供やコードベースへの直接の貢献に興味がある場合は、Test Runner for Java への貢献 をお読みください。これには次の内容が含まれます。
次のステップ
さらに読む
- デバッグ - VS Code で Java プロジェクトをデバッグする方法をご覧ください。
- Java 用拡張機能 - VS Code の便利な Java 拡張機能についてさらに学びます。