コードカバレッジ
IntelliJ IDEA のコードカバレッジを使用すると、特定の実行中に実行されたコード行を分析できます。これにより、テストでカバーされたコードの割合を決定し、テストカバレッジが不十分な領域を特定できます。
Java のコードカバレッジプラグインを有効にする
この機能は、デフォルトで IntelliJ IDEA にバンドルされ有効になっている Code Coverage for Java プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。
Ctrl+Alt+S を押して設定を開き、
を選択します。インストール済みタブを開き、Java のコードカバレッジプラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。
カバレッジ付き実行
カバレッジ分析を実行するためのエントリポイントは、通常アプリケーションを実行するために使用するものと同じです。
カバレッジ分析は、カバレッジエージェントが接続された対応する実行構成を実行します。このエージェントはバイトコードをインストルメント化して、実行を行ごとに追跡します。実行が完了すると、分析の結果が IDE に表示されます。
カバレッジスイート
特定の実行のカバレッジデータのコレクションは、カバレッジスイートと呼ばれます。
IntelliJ IDEA は、1 つ以上のカバレッジスイートの結果を一度に表示できます。複数のスイートを選択した場合、IDE はこれらのスイートからマージされた結果を表示します。つまり、行は、選択したスイートの少なくとも 1 つで実行された場合にカバーされていると見なされます。
対応するスイートファイルは、IntelliJ IDEA のシステムディレクトリにあります。
%LOCALAPPDATA%\JetBrains\IntelliJIdea2024.3\coverage
~/.cache/JetBrains/IntelliJIdea2024.3/coverage
~/Library/Caches/JetBrains/IntelliJIdea2024.3/coverage
スイートの管理
メインメニューで、
Ctrl+Alt+F6 に移動します。表示するカバレッジスイートの選択メニューで:
チェックボックスを使用してアクティブなスイートを選択します。アクティブなスイートは、IDE に現在表示されているカバレッジデータを定義します。
追加を使用して、CI サーバーで生成されたファイルや、他のユーザーから送信されたファイルなどの外部スイートファイルをインポートします。.ic (IntelliJ IDEA ランナー) または .exec/.xml (JaCoCo ランナー) ファイルを使用できます。
IntelliJ IDEA ランナーで収集されたインポートされたスイートを表示するには、プロジェクトをコンパイルしたり実行したりする必要はありません。
リストからスイートを削除しますが、ファイルはストレージに保持するには、 除去を使用します。
削除を使用して、リストからスイートを削除し、ストレージからファイルを削除します。
カバレッジデータを読み取る
IntelliJ IDEA は、次のカバレッジ結果を表示します:
カバレッジツールウィンドウ
プロジェクトツールウィンドウ
エディター
コードカバレッジの結果は、カバレッジを含む実行構成を少なくとも 1 つ起動すると、カバレッジツールウィンドウ、プロジェクトツールウィンドウ、およびエディターに表示されます。
プロジェクトツールウィンドウ
プロジェクトツールウィンドウには以下が表示されます。
ディレクトリのカバークラスと行の割合
カバーされているメソッドとクラスの行数の割合
カバレッジツールウィンドウ
レポートでは、クラス、メソッド、行、ブランチのカバレッジ率別にプロジェクトを分類します。
ブランチカバレッジは、if-else
や switch
などのステートメントで実行されたブランチの割合を示します。これは、JaCoCo ランナーと、分岐カバレッジオプションが有効になっている IntelliJ IDEA ランナーで使用できます。
カバレッジツールウィンドウには次のオプションがあります。
項目 | 説明 |
---|---|
| パッケージを階層的に表示するか、構造をフラット化してすべてを同じレベルで表示するかを選択します。 |
| このオプションがオンの場合、IntelliJ IDEA は選択したアイテムをエディターで自動的に開きます。それ以外の場合は、アイテムをダブルクリックして開く必要があります。 |
| このオプションがオンの場合、IntelliJ IDEA は、エディターで開いたファイルをツールウィンドウで自動的に検索します。 |
| コードカバレッジレポートを生成し、指定したディレクトリに保存します。詳細については、カバレッジレポートの生成を参照してください。 |
| ディスクからカバレッジスイートをインポートします。 |
| カバレッジ結果をフィルタリングします。コミットされていない変更のあるクラスのみを表示して最近の更新に焦点を当てたり、テストで完全にカバーされているクラスを非表示にしたりすることができます。 |
エディター
エディターのガターでは、カバレッジステータスに応じて行がハイライトされます。
緑 – 実行された行
赤 – 実行されていない行
黄色 –
if-else
ステートメントの 1 つのブランチのみが参照された場合など、部分的に実行された行
コード行の統計を表示するには、ガター内の対応するカラーインジケーターをクリックします。ポップアップが開き、ヒット数と条件評価統計が表示されます (IntelliJ IDEA ランナーのみ)。
さらに、統計ポップアップには次のオプションがあります。
| JUnit テストの場合: 行をカバーするテストを別のダイアログで開きます。この機能を使用するには、分岐カバレッジおよびテストカバレッジごとに追跡するオプションを使用してカバレッジ分析を実行したことを確認してください。 |
| 現在のクラスのバイトコードを別のダイアログ |
| ガターのカバレッジインジケーターの色を変更する |
カバレッジデータを非表示にする
以下のいずれか 1 つを実行します:
カバレッジツールウィンドウ ( ) のカバレッジ統計のタブを閉じます。
ガター内のカバレッジハイライトをクリックし、カバレッジを非表示を選択します。
カバレッジレポートの生成
カバレッジツールウィンドウで をクリックします。
に移動するか、カバレッジレポートの生成ダイアログで、生成されたレポートを保存するディレクトリを指定し、オプションで生成した HTML をブラウザーで開くチェックボックスを選択します。
コードカバレッジを構成する
IntelliJ IDEA には、個々の実行構成に適用されるカバレッジ設定と、プロジェクトごとに適用されるカバレッジ設定があります。
実行構成の設定
実行構成ごとに、カバレッジ分析の範囲を指定できます。
クラスとパッケージを構成する
に移動し、左側のパネルの実行構成をクリックします。
オプションを変更をクリックし、コードカバレッジで次のオプションを選択します。
クラスとパッケージを指定する : カバレッジ情報を表示するクラスとパッケージを構成するには、このオプションを選択します。
クラスとパッケージを除外する : このオプションを選択して、カバレッジから除外するクラスとパッケージを構成します。
プロジェクト設定
プロジェクトの場合、次のオプションを設定できます。
エディターにカバレッジを適用する前にオプションを表示する | カバレッジ分析を実行するたびに、最近収集されたカバレッジスイートをアクティブにするかどうかを確認します。この場合、ダイアログが表示され、新しい結果のみを表示するか、既存の結果に追加するか、表示せずにストレージに保存するかを選択できます。 |
収集されたカバレッジを適用しない | カバレッジ分析を実行した後は、最近収集したカバレッジスイートのみをストレージに保存してください。この場合、 で対応するスイートを明示的に選択しない限り、新しいカバレッジデータは表示されません。 |
アクティブなスイートを新しいものに置き換える | 現在表示されているカバレッジスイートを非表示にして、カバレッジ分析を実行した後に新しく収集されたスイートを使用します。この場合、最新のカバレッジ実行の結果のみが表示されます。 |
アクティブなスイートに追加する | カバレッジ分析を実行した後、新しく収集されたカバレッジスイートをアクティブスイートのリストに追加します。これにより、既存のカバレッジ結果が保持され、その上に新しい結果が追加されます。 |
カバレッジビューをアクティブにする | カバレッジ分析を実行するたびにカバレッジツールウィンドウを開きます。 |
カバレッジランナーの選択 | カバレッジランナーを選択: IntelliJ IDEA または JaCoCo |
分岐カバレッジ only for IntelliJ IDEA runner | |
テストカバレッジごとに追跡する only for IntelliJ IDEA runner | 行が実行された特定のテストまでさかのぼって追跡できます。これらのテストに移動するには、エディターのガターでハイライトされているカバレッジをクリックし、 テストがカバーする行を表示をクリックします。 |
テストフォルダー内のカバレッジを収集 only for IntelliJ IDEA runner | テストのコードカバレッジ統計を収集します。デフォルトでは、カバレッジデータにはソースルートでカバーされた行のみが表示されます。このオプションを使用すると、テストルートでもカバレッジ収集が有効になります。 |
暗黙的に宣言されたデフォルトコンストラクターを無視する only for IntelliJ IDEA runner | 暗黙のデフォルトコンストラクターをカバレッジ統計から除外します。明示的に宣言された引数なしのコンストラクターは含まれたままになります。 |
アノテーションを除外 only for IntelliJ IDEA runner | 指定されたアノテーションでマークされた要素 (例: Lombok の |
カバレッジのハイライトの色を変更する
Ctrl+Alt+S を押して設定を開き、
を選択します。コンポーネントのリストで、カバレッジ行ノードを展開し、カバレッジのタイプを選択します(例: 全部、一部または Uncovered)。
フォアグラウンドフィールドをクリックして、色を選択しますダイアログを開きます。
色を選択し、変更を適用して、ダイアログを閉じます。
関連ページ:
アプリケーションを実行する
プロジェクト / モジュールに SDK のセットアップがある場合は、IntelliJ IDEA から直接アプリケーションを実行できます。簡単な方法:エディターから実行プログラムにパラメーターを渡さず、プログラムを開始する前に特定のアクションを実行する必要がない場合は、エディターから直接実行できます。クラス宣言の近くのガターでクリックし、実行を選択します。現在のファイルを実行するツールバーの専用オプションを使用して、単一のファイルを実行できます。実行ボタンとデバッグボタンがアクティブになり、現在...
実行 / デバッグ構成
IntelliJ IDEA は、実行 / デバッグ構成を使用して、コードを実行、デバッグ、テストします。各構成は、何を実行し、どのパラメーターと環境を使用するかを定義する、名前付きのスタートアッププロパティのセットです。実行 / デバッグ構成には 2 つのタイプがあります。一時的 — 永続的な構成を持たないクラスを実行するたびに作成されます。これは、メソッドを持つクラスの実行を可能にする最低限のものを提供します。永続的 — テンプレートから明示的に作成されるか、一時的な構成を保存することによって作成...
新しい UI
新しいユーザーインターフェース (UI) は、IntelliJ IDEA の外観を新しく再設計したものです。これは、視覚的な複雑さを軽減し、重要な機能に簡単にアクセスできるようにし、必要に応じて複雑な機能を段階的に公開することを目的として作成されており、その結果、見た目も操作性もすっきりします。主な変更点には、簡素化されたメインツールバー、新しいツールウィンドウレイアウト、新しいテーマ、更新されたアイコンがあります。テーマ、アイコン、フォント:新しいライト、ダーク、ライトヘッダー付きライトカラ...
チュートリアル: テスト駆動開発
運用コードを作成する前にテストを作成する場合でも、後でテストを作成する場合でも、IntelliJ IDEA を使用すると、単体テストの作成と実行が簡単になります。このチュートリアルでは、最初に IntelliJ IDEA を使用してテスト (テスト駆動開発または TDD) を作成する方法を示します。プロジェクトの作成:新規プロジェクトを作成する IntelliJ IDEA を起動します。ウェルカム画面が開いたら、「新規プロジェクト」をクリックします。それ以外の場合は、メインメニューのに移動する...
テストデータを生成する
一部のテストはテストデータに依存しており、IntelliJ IDEA がテストデータを生成できます。名前、日付、メールアドレス、パスワード、ホスト名などが考えられます。単一のエントリをすばやく挿入したり、より高度なオプションを使用して CSV、JSON、その他のカスタム形式で大規模なファイルを生成したりできます。リテラルを生成するリテラルを生成する場所にキャレットを配置し、を押します。生成されたリテラルはキャレットに表示されます。メニューから、生成するデータのタイプを選択します。事前定義された...