このセクションの内容

推奨事項のフィルタリング

テスト実行後、推奨ビューに、テスト改善のための推奨事項が表示されます (UTA が生成する推奨事項を指定する方法については「設定の構成」を参照してください)。デフォルトでは実行中に生成されたすべての推奨事項を表示しますが、推奨ビュー上部のドロップダウン メニューからカテゴリを選択し、特定の推奨事項だけを表示することができます。


アクション リンクおよびアイコンの使用

推奨事項には、テスト コードをナビゲートし、変更するのに役立つアクション リンクおよびアイコンがあります。

推奨事項に表示されるリンクおよびアイコンは、推奨事項のタイプ、テストのタイプ、テスト コードによって異なります。ただし、ほとんどの推奨事項に以下が表示されます。

多くのアクション リンクは、テスト コードを自動的に更新します。たとえば、[コメント解除] は、UTA によって生成されたテスト テンプレートの特定のコメントマーカーを削除し、[アサーションの削除] は不要なアサーションがある行を削除し、[テストの複製] は既存のテスト ケースのコピーを作成します。一部のアクション リンクは、テスト コードを更新するのではなく、コードのナビゲーションおよび分析に役立ちます。たとえば、[[メソッド名] トラック] アクションリンクは、アサーションが必要な可能性がある値を検出します。詳細については「オブジェクトの変更の追跡とアサーションの作成」を参照してください。

UTA はテスト実行時に解析されたコードに対する推奨事項を表示します。テスト実行後にコードを変更した場合、表示された推奨事項は最新ではなく、アクション リンクが正しく適用されない可能性があります。

推奨事項への対処

このセクションでは、単体テスト アシスタントの推奨事項のサンプルをいくつか示し、テスト品質の改善にどのように役立つかを説明します。

アサーションなし

UTA はアサーションが含まれないテストを検出しました。通常、この問題は、UTA で新規テストを作成したが、デフォルトのアサーションをコメント化したままの場合に発生します。

修正方法: 以下のいずれかの処理を行います。

アサーションの失敗

UTA はアサートされる値が期待値と異なるためにテスト実行中に失敗したアサーションを検出しました。

修正方法: 以下のいずれかの処理を行います。

Spring テストを行う場合、[アサーションの反転] アクション リンクは利用できません。アサーションのタイプによって、以下のいずれかのアクション リンクを使用してテストを更新します。

システム プロパティの変更

UTA は、テスト実行中に追加されたが、実行後に削除されていないシステム プロパティを検出しました。結果として、その後のすべてのテストはこのプロパティにアクセスするため、テスト間の依存関係が生まれ、テストを分離して実行できない可能性があります。  

修正方法: テスト実行中に追加または削除されたシステム プロパティが必ず実行後に削除または復元されるようにします。

他のスレッド

UTA は、テスト実行中にアクティブだった他のスレッドを検出しました。他のスレッドは、テストの安定性に影響を与え、ランダムな失敗の原因になる可能性があります。

修正方法: サイド スレッドを伴うテスト ケースを記述するのを避けるか、それらのスレッドがテスト結果に影響を与えないことを確認します。

ファイルの作成

UTA は、テスト実行中に作成されたが、実行後に削除されていないファイルを検出しました。これは、その後のテスト実行や他のテストに影響を与えたり、アプリケーションの潜在的な問題を隠蔽する可能性があります。

修正方法: テストによって作成されたファイルが、テスト実行が終了する前に必ず削除されるようにします。

静的なフィールドの変更

UTA は、テスト実行中に変更された静的フィールドを検出しました。これは、その後のテスト実行や他のテストに影響を与える可能性があります。

修正方法: 実行中に静的フィールドを変更するテスト ケースを作成しないようにします。または、変更がテスト結果に影響を与えないことを確認します。

 この推奨事項は、setStaticValue() など、名前がキャメル ケースの名前付け規則に従っており、setで始まる静的メソッドによって変更される静的フィールドに対してだけ表示されます。

タイムアウト

複数テストの作成時に指定された制限時間 (「テスト スイートの作成」を参照) を超えました。  

修正方法: 手動でテストを変更して実行時間を短縮するか、テスト コードの値を変更して新しいタイムアウト値を設定します。

カバーされていないコード

UTA がカバーされていないコードを検出しました。カバーされていないコードに移動するには、[移動] をクリックします。

修正方法: 以下のいずれかを行います。

詳細は「コード カバレッジの改善」を参照してください。

推奨事項の種類

UTA が表示する推奨事項の種類については「推奨事項の種類」を参照してください。