カバレッジフィルターを設定する
カバレッジフィルターを使用すると、カバレッジ解析に含めるアセンブリとシンボル、またはカバレッジ解析から除外するアセンブリとシンボルを制御できます。フィルターは以下のことに役立ちます。
無関係なコードをスキップすることで分析時間を短縮します。
プロジェクトまたは作業領域に結果を集中させます。
テストヘルパー、サードパーティライブラリ、または生成されたコードを除外します。
フィルタータイプ:
- 実行時カバレッジフィルター
JetBrains Rider は、カバレッジセッション中にこれらのフィルターを適用します。これらのフィルターを使用して、不要なコードを分析から除外し、カバレッジセッション時間を短縮します。
ランタイムフィルターは、JetBrains Rider 設定またはコマンドラインを使用して構成できます。
- カバレッジ結果のフィルター
JetBrains Rider は、カバレッジセッションが終了した後、これらのフィルターをカバレッジ結果(カバレッジツリー)に適用します。使用して、現時点で表示したくないノードを除外します。詳細
ランタイムカバレッジフィルターを適用する
特定の名前空間または属性のランタイムカバレッジフィルターを指定するには、JetBrains Rider 設定を使用します。
フィルターは実行時に適用されるため、JetBrains Rider はフィルターされた項目をカバレッジスナップショットに含めず、単体テストのカバレッジウィンドウに表示しません。
ランタイムカバレッジフィルターを追加する
Rider 設定でフィルター設定ページを開きます: 。
実行時カバレッジフィルターで、必要なフィルター規則の横にある
追加 ... をクリックします。アセンブリ内のコードを分析しない – 特定のアセンブリ(例:
*.Tests)を除外します。これはテストユーティリティや外部 SDK に便利です。属性でマークされたコードを分析しません – 特定の属性でマークされたクラス、メソッド、プロパティを除外します。完全修飾属性名(例:
System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttributeまたは*.ExcludeFromCodeCoverageAttribute)を指定します。
フィルターでコード項目名を指定するときに、アスタリスクのワイルドカードを使用できます。
*(アスタリスク)は、0 個以上の文字を表します。保存をクリックします。
カバレッジ結果にフィルターを適用する
JetBrains Rider は、カバレッジセッション終了後、カバレッジ結果にこれらのフィルターを適用します。結果フィルターを使用すると、UI のカバレッジツリーから項目を一時的に非表示にすることができます。これらのフィルターは、分析や生成されたスナップショットには影響しません。
カバレッジ結果からノード(名前空間、クラス、クラスメンバー)を除外する
単体テストカバレッジウィンドウを開きます。
ノードを選択し、コンテキストメニューで次を選択します。
現在の結果からノードを除外する報道結果から除外します。
カバレッジツリーで選択したノードだけを残すには、これ以外をすべて除外を押します。
除外されたノードを表示する
単体テストカバレッジウィンドウの上にあるすべてのノードを表示リンクをクリックします。
関連ページ:
コマンドラインツールによるカバレッジ分析
dotCover コマンドラインツールを使用すると、次のことが可能になります。任意のテストランナー(MSTest、NUnit、xUnit、MSpec など)を使用してカバレッジ分析を実行し、実行されたテストのカバレッジをカバレッジスナップショットに記録します。カバレッジスナップショットをマージコマンドでマージします。たとえば、異なるテストフレームワークを使用するユニットテストのスナップショットを結合します。report コマンドを使用して、さまざまな形式でカバレッジレポートを生成します。その他多数...
単体テストカバレッジウィンドウ
dotCover プラグインを有効にするこの機能は、JetBrains Rider にデフォルトでバンドルされ有効になっている dotCover プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、dotCover プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。このウィンドウでは、単体テストのカバレッジ実行中に取得されたカバレッジデータを調べることがで...
継続的なテストを使用する
連続テストの概念は、コードを変更するとすぐに実際のテスト結果がすぐに得られることを意味します。プロジェクトを手動で再構築し、変更後にすべてのテストを再実行する必要はありません: 影響を受けるテストはバックグラウンドで自動的に実行されます(テストセッションは、変更の保存やプロジェクトのビルドなどの明示的なアクションによってトリガーされます)。ソリューションで継続的なテストを可能にするを押すか、メニューから (Windows および Linux) または (macOS) を選択し、左側のを選択する...
カバレッジ結果を処理する
実行するカバレッジ分析のタイプ、ユニットテストのカバレッジ、アプリケーションのカバレッジに関係なく、dotCover はカバレッジ結果をカバレッジスナップショットに保存します。その後、エディターと単体テストカバレッジウィンドウを使用して、これらの結果をさらに調査できます。エディターでコードカバレッジを視覚化する:カバレッジセッションが完了すると、Rider は単体テストカバレッジウィンドウを開きます。ウィンドウのツールバーでハイライトコードをクリックします。dotCover は、現在のカバレッ...