dotCover 2020.2ヘルプ

入門

JetBrains dotCoverは、.NETユニットテストランナーおよびコードカバレッジツールです。dotCoverを使用すると、.NETアプリケーションコードの実際にテストされている量を分析できます。ユニットテスト中またはアプリケーションを手動で実行するときにメソッド呼び出しを測定することにより、dotCoverは、どのステートメントがカバーされ、どのステートメントがカバーされなかったかを示します。

dotCover integrates into Visual Studio 2010, 2012, 2013, 2015, 2017, and 2019. After installing dotCover with or without any other dotUltimate tools and opening Visual Studio, you will find dotCover commands under the ReSharper | ユニット・テスト and ReSharper | カバー in the main menu. From these menus, you can execute various commands available in dotCover.

ユニットテストとコードカバレッジ

dotCoverを使用する最も基本的なシナリオは、テストでカバーするコードの量を測定することです。ベースライン条件は以下の通りです。Visual Studioでソリューションを開いています。ソリューションのコードは、いくつかの単体テストでカバーされています。タスクは、どの程度のコードがカバーされているかを理解することです。

ソリューションの単体テストのカバレッジを分析する

  1. メインメニューからReSharper | ユニット・テスト | ユニット・テストを選択します。これにより、ユニットテストエクスプローラーツールウィンドウが開きます。ここでは、ソリューション内にいくつのテストがあるかを見ることができます。

    dotCover: Unit test explorer

  2. ユニットテストエクスプローラーウィンドウで、カバレッジを分析するテストを選択します。すべてのテストを分析する場合は、ツリーの最上位ノードを選択します。カバレッジフィルターを使用して、カバレッジスコープを制限できることに注意してください。

  3. カバーユニットテスト Cover Unit Tests Control+T Hをクリックします。これにより通常の単体テストセッションが実行されますが、dotCoverはカバレッジデータをバックグラウンドで収集します。テスト結果は、新しく開いた単体テストセッションウィンドウにリアルタイムで表示されます。カバレッジ結果(テストがコード内の特定のクラスとメソッドをどのようにカバーするか)は、ユニットテストカバレッジツールウィンドウに表示されます。

    dotCover: Unit test session coverage

  4. 特定のクラスまたはメソッドを正確にカバーするテストを表示するには、ユニットテストカバレッジウィンドウでそれを選択し、コンテキストメニューでカバーテストを表示するを選択します。

    dotCover: Covering tests

  5. 強調表示コード Highlight codeをクリックして、コードカバレッジを視覚化します。

    dotCover: Default coverage highlighting
    デフォルトでは、カバレッジとテスト結果はエディターの左側のガターにマーカーで表示されます。現在のステートメントに関連するテストが失敗した場合はマーカーが赤、すべてのテストが合格した場合は緑、これをカバーするテストがない場合は灰色になります。ステートメント。

  6. ユニットテストカバレッジウィンドウには、もう1つの非常に便利なメトリックが含まれています。ホットスポット Hot Spotsをクリックすると、潜在的に危険なクラスの「クラウド」が表示されます。これは、循環的複雑度が高いが、テストで十分にカバーされていないクラスです。

    dotCover: Hot spot coverage view

アプリケーションの範囲

dotCoverを使用すると、特定のユースケースシナリオのコードカバレッジを計算できます。 Control+Alt+K P を押すか、メニューdotCoverコントロール下でソリューションのスタートアッププロジェクトを開始ReSharper | カバー | カバースタートアッププロジェクトを選択します。または、Control+Alt+K K またはReSharper | カバー | 表紙アプリケーション...を使用すると、のコードカバレッジを計算するアプリケーションを指定できます。

dotCover: Coverage Configuration dialog

次に、アプリケーションを実行し、ユースケースのシナリオを実行し、完了したらスナップショットを取得するためにdotCoverに伝えます。テストされたアプリケーションがdotCoverコントロールで動作する限り、スナップショットを取得するをクリックしてテストされたアプリケーションで作業したときにどのコード行がカバーされているかを確認できるコントローラーダイアログが表示されます。

dotCover controller dialog

カバレッジ結果のフィルタリング

コードカバレッジの結果は、インフラストラクチャコードや調査に興味のないプロジェクトで混乱する可能性があります。特定のノードを右クリックしてカバレッジフィルタを除外して作成するを選択することで除外できます。

Excluding nodes from dotCover coverage results

アイテムを除外し、対応するランタイムカバレッジフィルターを作成すると、dotCoverが次にカバレッジ分析を実行するときにアイテムをカバーしないように指示されます。

カバレッジフィルタは、カバレッジフィルタダイアログ(Control+Alt+K FまたはReSharper | カバー | カバレッジフィルタを編集...)を介して管理することもできます。フィルタは、開いているソリューションまたはアクティブなソリューションを対象としている任意のソリューションに対して定義できます。

dotCover helps filtering coverage results

これらの基本をマスターしたら、キーボードショートカットを習得したり、dotCoverのコマンドラインバージョンの操作方法を確認したりできます。

最終更新日: 2020年8月05日