IntelliJ IDEA 2024.1 ヘルプ

TestNG

この記事から、プロジェクト用に TestNG をセットアップし、テストを作成し、実行してコードが正しく動作しているかどうかを確認する方法を学習します。それは始めるための基本的なステップだけを含んでいます。

TestNG について詳しく知りたい場合は、公式ドキュメント(英語)を参照してください。IntelliJ IDEA のテスト機能の詳細については、このセクションの他のトピックを参照してください。

Maven または Gradle を使用して、このページの手順に従うことを選択できます。

プロジェクトに TestNG を追加する

  1. プロジェクトのルートディレクトリで pom.xml を開きます。

  2. pom.xml で、Alt+Insert を押して、依存を選択します。

  3. 開いたダイアログで、検索フィールドに「testNG 」と入力します。

    org.testng:testing 依存関係を見つけて、検索結果からそのバージョンを選択し、追加をクリックします。

  4. 依存関係が pom.xml に追加されたら、Ctrl+Shift+O を押すか、Maven ツールウィンドウで Reimport All Maven Projects をクリックして変更をインポートします。

  1. プロジェクトのルートディレクトリで build.gradle を開きます。

  2. build.gradle で、Alt+Insert を押して、Maven アーティファクト依存関係を追加を選択します。

  3. 開いたダイアログで、検索フィールドに「testNG 」と入力します。

    org.testng:testing 依存関係を見つけて、検索結果からそのバージョンを選択し、追加をクリックします。

  4. 依存関係が build.gradle に追加されたら、Ctrl+Shift+O を押すか、Gradle ツールウィンドウで Reimport All Gradle Projects をクリックして変更をインポートします。

  1. メインメニューで、ファイル | プロジェクト構造 (Ctrl+Alt+Shift+S) に移動します。

  2. プロジェクト設定ライブラリを選択し、the New Project Library button | Maven からをクリックします。

  3. 開いたダイアログで、必要なライブラリアーティファクトを指定します(例: org.testng:testng:6.14.3)。

  4. 変更を適用し、ダイアログを閉じます。

テストの作成

新しい TestNG クラスを作成する

  1. プロジェクトツールウィンドウ (Alt+1) で、新しいテストクラスを作成するテストソースルート Test Sources Root 内のパッケージを右クリックします。

  2. コンテキストメニューから新規 | Java クラスを選択します。

  3. 新規クラスの作成ダイアログで、新しいクラスに名前を付けて、OK をクリックします。

  4. エディターで、テストクラスのコードを記述します。必要に応じて TestNG アノテーションを使用します。例: クラス全体または個々のメソッドにアノテーションを付けることができます:

    import org.testng.Assert; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; @Test() public class SampleTest { @DataProvider public Object[][] data() { return new String[][] {new String[] {"data1"}, new String[] {"data2"}}; } @Test(dataProvider = "data") public void test(String d) { Assert.assertEquals("First Line\nSecond Line", "First Line\nSecond Line"); } }

テストの実行

TestNG テストを実行する

  • 個別のテストを実行するには、ガターの Run をクリックして、実行を選択します。

  • テストクラスですべてのテストを実行するには、テストクラス宣言に対して Run をクリックし、実行を選択します。

実行ツールウィンドウでテスト結果を表示できます。

Viewing TestNG test results in Run tool window

テストを実行してレポートを生成する

IntelliJ IDEA では、VM オプションを追加したり、別の JDK を使用したり、実行構成を使用してコードカバレッジを有効にしたりできます。同じテストクラスまたは異なる設定のテストスイートに対して複数の構成を作成し、結果を比較できます。

TestNG の場合、レポートを生成するリスナー(英語)を構成できます。テストを実行するたびにレポートを生成したくない場合は、別の実行構成を作成すると便利な場合があります。

  1. メインメニューで、実行 | 実行構成の編集に移動します。

  2. 以前に作成された TestNG 構成がない場合は、Add New Configuration をクリックし、開いたリストから TestNG を選択します。

    それ以外の場合は、リストから必要な既存の構成を選択します。

  3. 新しい構成の場合は、名前を付けます。

  4. テスト種類リストから、実行するテストの範囲を選択します。次のフィールドはそれに応じて変更され、実行する特定のテストを選択できるようになります。

  5. 出力ディレクトリフィールドでは、IDE がレポートを配置するフォルダーを指定できます。

    デフォルトでは、IDE はプロジェクトのルートディレクトリに新しい test-output フォルダーを作成しますが、別のフォルダーを使用することも、別のレポートに別のフォルダーを使用することもできます。

  6. リスナータブに切り替え、Add をクリックして、EmailableReporter オプションを追加します。これにより、HTML レポートが生成されます。

  7. 変更を適用し、ダイアログを閉じます。

    Adding a listener in run configuration
  8. ツールバーで、新しく作成された実行構成が選択されていることを確認し、その横にある をクリックします。または、Shift+F10 を押します。

    Running configuration that launches tests and generates reports

IDE は、実行構成で指定したフォルダーにテスト実行の結果を含む .html レポートを作成します。フォルダーを指定していない場合は、レポートを含む test-output フォルダーが作成されます。

このファイルをブラウザーですぐに表示するには、エディターでファイルを開きます。次に、表示 | ブラウザーで開くに移動し、ブラウザーを選択します。組み込みのプレビューを使用してファイルを表示することもできます。詳細については、「HTML ファイルのプレビュー出力」を参照してください。

Viewing TestNG HTML report

テストスイート

TestNG では、テストスイートは、アプリケーションの特定の機能または機能をテストするように設計されたテストの集まりです。関連するテストケースのグループを保持するコンテナーです。テストスイートは、複数のテストケースをグループ化するか、複数のテストスイートを組み合わせて作成できます。

TestNG では、テストコードまたはメインテストソースコード内でテストスイートを定義することはできません。そのため、テストケース、テストケースを含むクラスまたはパッケージ、およびテストパラメーターに関する情報を含む XML または YAML ファイルでテストスイートを定義できます。

XML でテストスイートを作成する

テストスイートは、.xml または .yaml ファイルで指定できます。YAML を使用する場合は、対応する依存関係をビルドファイルに追加してください。

  1. プロジェクトツールウィンドウでプロジェクトルートフォルダーを右クリックし、新規 | ファイルを選択して、ファイル名 (例: testng.xml) を入力します。

  2. テストに関する情報をファイルに入力します。詳細については、testng.xml(英語) を参照してください。

テストスイートに YAML を使用する

TestNG は YAML を使用したテストスイートの定義をサポートしています(英語)が、デフォルトでは YAML パーサーは含まれていません。YAML ファイルを使用する場合は、snakeyaml 依存関係を追加します。バージョンは、使用する TestNG のバージョンと一致する必要があります。

  1. ビルドファイル(pom.xml または build.gradle)を開き、Alt+Insert を押して、依存関係の追加を選択します。

  2. 開いたツールウィンドウで、検索フィールドに snakeyaml と入力します。

    必要な依存関係を見つけ、検索結果でそのバージョンを選択し、その横にある追加をクリックします。

  3. Ctrl+Shift+O を押すか、エディターの右上隅に表示される通知をクリックして、変更をロードします。

  4. プロジェクトツールウィンドウでプロジェクトルートフォルダーを右クリックし、新規 | ファイルを選択して、ファイル名 (例: testing.yaml) を入力します。

テストスイートを実行する

TestNG テストスイートを実行できるようにするには、このスイートの実行構成を作成します。

  1. メインメニューで、実行 | 実行構成の編集に移動します。

  2. 左側のペインで Add New Configuration をクリックし、開いたリストから TestNG を選択します。新しい構成に名前を付けます。

  3. テスト種類リストから、スイートを選択します。

    スイートフィールドが使用可能になります。

  4. スイートフィールドで、Browse をクリックし、テストスイートが構成されている XML または YAML ファイルへのパスを指定します。

  5. 出力ディレクトリフィールドでは、IDE がテストレポートなどの出力ファイルを配置するフォルダーを指定できます。

    デフォルトでは、IDE はプロジェクトのルートディレクトリに新しい test-output フォルダーを作成しますが、別のフォルダーを使用することも、別の出力に別のフォルダーを使用することもできます。

  6. 変更を適用し、ダイアログを閉じます。

    Creating configuration to run TestNG suite
  7. ツールバーで、新しく作成された実行構成が選択されていることを確認し、その横にある Run をクリックします。または、Shift+F10 を押します。

    Running test suite

関連ページ:

Maven

IntelliJ IDEA は Maven との完全な機能統合をサポートしており、構築プロセスの自動化に役立ちます。新しい Maven プロジェクトを簡単に作成したり、既存のプロジェクトを開いて同期したり、既存の IntelliJ IDEA プロジェクトに Maven サポートを追加したり、マルチモジュールプロジェクトを構成および管理したりできます。Maven プロジェクトを作成して WSL 環境に保存したり、WSL ファイルシステムから開いたりすることもできます。詳細については、WSL のセクションを...

Gradle

IntelliJ IDEA は Gradle との完全な機能統合をサポートしており、構築プロセスの自動化に役立ちます。新しい Gradle プロジェクトを簡単に作成し、既存のプロジェクトを開いて同期し、リンクされた複数のプロジェクトを同時に操作して管理することができます。Gradle プロジェクトを作成して WSL 環境に保存したり、WSL ファイルシステムから開いたりすることもできます。詳細については、WSL のセクションを参照してください。新規 Gradle プロジェクトを作成する新規プロジェクト...

テストの準備

IntelliJ IDEA は、JUnit、Spock、TestNG など、複数の Java テストフレームワークですぐに使用できます。IDE では、必要なテストメソッドとともに、ソースコードから直接テストクラスを作成できます。ショートカットを使用して、テストクラスとソースコードを切り替えたり、複数のテストを実行したり、各テストの統計を表示したり、テスト結果をファイルにエクスポートしたりできます。IntelliJ IDEA はコードカバレッジも備えており、コードを分析して、コードのどの領域がテスト...

テストの作成

IntelliJ IDEA で新しいテストクラスを作成する最も簡単な方法は、ソースコードから呼び出すことができる専用のインテンションアクションを使用することです。この場合、IDE は新しいテストクラスを作成し、このクラス、パッケージ、関数のテストコードを生成します。新しいテストを追加するエディターの本番コードで、テストを作成するクラスにキャレットを配置し、を押して、テストの作成を選択します。テストの作成ダイアログで、使用するライブラリを選択します。必要なライブラリがまだない場合は、ダウンロード...

コンテンツルート

IntelliJ IDEA のコンテンツは、ソースコード、ビルドスクリプト、テスト、ドキュメントを含むファイルのグループです。これらのファイルは通常、階層構造になっています。最上位フォルダーはコンテンツルートと呼ばれます。モジュールには通常、1 つのコンテンツルートがあります。コンテンツルートを追加することができます。たとえば、コードがコンピューター上の別の場所に格納されている場合には、これは便利です。同時に、モジュールはコンテンツルートなしで存在することができます。この場合、他のモジュールの依...

Maven でのテスト

Maven プロジェクトでは、デフォルトの IntelliJ IDEA テストランナーを使用して、他のプロジェクトと同じ方法でテストを作成および実行できます。簡単な JUnit テストを実行する Maven プロジェクトを開きます。エディターでテストクラスを作成または開き、ガターでクリックして実行します。結果は実行ツールウィンドウに表示されます。定期テストの作成または実行の詳細については、「テスト」セクションを参照してください。テストの実行を Maven に委譲できます。JUnit または Te...