このセクションでは、Jtest デスクトップ ユーザー向けにテスト影響分析のワークフローを説明します。コマンド ラインからのテスト影響分析の実行については、「Maven を使用したテストと解析」および「Gradle を使用したテストと解析」を参照してください。
このセクションの内容
Jtest のテスト影響分析機能は、コードの変更の影響を受けるテスト ケースを自動的に検出することで、テスト作業の効率化を支援します。これにより、変更の影響を受けるテストだけを識別して再実行することができます。
Jtest は、コードの変更の影響を受けるテストを以下の方法で識別します。
[影響を受ける単体テスト] ビューは、これら 2 つのテスト識別方法の結果を組み合わせます。
[影響を受ける単体テスト] ビューは、単体テストの名前付け規則に基づいて自動的にテストを表示しますが、コード カバレッジ データから得られる結果のほうが正確であり、実行する必要があるテストをさらに多く識別できる可能性が高いでしょう。そのため、影響を受けるテストを確認する前に、最新の完全な単体テスト実行から得られたコード カバレッジ データを IDE にインポートすることを推奨します。
テスト影響分析は、IDE と統合されたバージョン管理システムに格納されたプロジェクトで利用できます。
1 Java 16 以上を使用して IDE を実行している場合、[影響を受ける単体テスト] ビューに正しい結果が表示されません。回避策については「既知の制限事項」を参照してください。
できるだけ正確な結果が得られるよう、IDE のカバレッジ ビューに変更対象ソース コードに関連するカバレッジデータが表示されていることを確認します。それには、Jtest を単体テストの実行に組み込んで、カバレッジ データを収集して XML ファイルに保存するか、DTP にレポートし、そのデータを IDE にインポートします。
単体テスト スイートを実行するごとにカバレッジ データを収集し、最新のテスト実行のデータをインポートすることで、IDE の情報が最新であることを保証できます。関連付けを更新するには、ファイルまたは DTP から IDE にカバレッジを再インポートします。
最新のテスト実行のカバレッジ データを定期的に再インポートし、関連付けがバージョン管理システム内のソース コードおよびテストと一致するようにします。 |
CI サーバーで Jtest と統合されたビルド ツール (Maven、Ant、または Gradle) を使用して単体テストを実行すると、coverage.xml
ファイルが生成されます。1 回のテスト実行ですべての単体テストが実行される場合、このファイルからカバレッジ データをインポートできます。
Maven、Gradle、Ant を使用してカバレッジ データを収集するよう単体テスト実行ジョブを設定します。ジョブを実行すると、サーバー上のジョブの場所にある coverage.xml
ファイルに実行されたテストのカバレッジが保存されます。このファイルを容易にダウンロード可能な場所に保存するようジョブを設定します。
複数のテスト実行からカバレッジを収集したい場合、DTP からカバレッジ データをインポートできます。
[影響を受ける単体テスト] ビューで、コード変更の影響を受けるテストをモニターし、再実行できます。このビューを開くには、IDE メニュー バーで [Parasoft] メニューの [ビューの表示] > [影響を受ける単体テスト] をクリックします。
Jtest はワークスペース内で開かれているすべてのプロジェクトを自動的にモニターします。デフォルトでは、現在のコード変更の影響を受けるテストがリアルタイムでビューに表示されます。テストに影響を受けるコード変更を行うたびに、ビューがリフレッシュされて該当テストを表示します。影響を受けるテストの自動検出をオフにするには、ビューのメニューで [影響を受けるテストを自動検出] オプションをオフにします。
このオプションがオフの場合、[リフレッシュ] ボタンをクリックして手動でビューをリフレッシュする必要があります。
検出されたテストを右クリックして [移動] をクリックすると、エディターでテスト コードを参照できます。
また、[影響を受けるテスト] ビューには以下も表示されます。
ビューに表示されているすべての影響を受けるテストを実行するには、ビューのメニューの [すべてのテストを実行] ボタンをクリックします。
影響を受けるテストの一部を実行するには、解析するプロジェクト、パッケージ、クラス、および/またはメソッドのノードを選択し、ビュー メニューの [選択されたテストの実行] をクリックします。
影響を受けるテスト ビューからの実行時にテストが失敗した場合、単一のテストを実行して原因を調べることができます。それには、テストを右クリックして [単体テスト アシスタントで実行] をクリックします。
テスト実行を中断するには、ビューのメニューにある [中止] ボタンをクリックします。
注意: デフォルト以外のパッケージの public ではない JUnit 5 のテスト クラスは、影響を受ける単体テスト ビューで実行できません。それらは利用できないクラスとしてビューに表示されます。
ビューのメニューにある [継続的にテストを実行] ボタンを使用すると、影響を受けるすべてのテストを継続的に実行し、バックグラウンドで自動的にカバレッジ データを収集できます。ビューで影響を受けるテストのツリーが更新される ([影響を受けるテストを自動検出] オプションが有効化されているか、[リフレッシュ] ボタンをクリックしてリフレッシュした場合) たびにテストが実行されます。
テスト実行後、ビューに表示されるテスト ステータスが自動的に更新されます。
カバレッジ ビューでカバレッジを収集するには、メニューの [カバレッジの収集] オプションをクリックします。すると、カバレッジ ビューが影響を受ける単体テスト ビューにカバレッジ データを提供できるようになり、影響を受ける単体テスト ビューでテストとカバーされたコードが関連付けられます。
影響を受けるテスト ビューから実行したテストが失敗した場合、結果およびエラーのスタック トレースが指摘事項および指摘事項の詳細ビューに表示され、エラーを解析できます。
指摘事項ビューには指摘事項のリストが表示されます。
単一の指摘事項の詳細を指摘事項の詳細ビューに表示できます。
影響を受けるテストの収集に使用する Git コミットの範囲を指定するには、[設定] リンクをクリックし、[影響を受けるテストの設定] ダイアログで設定を指定します。
注意: