.net column

.NET開発者のためのブログメディア
データ

Visual Studioでカバレッジを測定する方法と目標値

2020年04月20日

プログラムのテストをする上で便利な「カバレッジ機能」。しかし、使い方がイマイチ分からずなかなか活用できていない方もいるのではないでしょうか。この記事では、Visual Studioで利用できるカバレッジ機能について分かりやすく解説していきたいと思います。ぜひ、参考にしてみてください。

PG
プログラムを作りましたが、バグばっかりで困ってます……テストする手法を教えてください!
PL
テストにはカバレッジ機能がおすすめです。前提として、Visual Studioのカバレッジ機能はEnterpriseエディションでしか利用できないので注意してください。

カバレッジの概要と測定方法

「そもそもカバレッジって何?」という方に向けて、まずはカバレッジについて解説していきたいと思います。カバレッジとは、プログラムのソースコードがテストされた割合のことです。つまり、現時点でどのくらいテストが終わったか可視化することができます。日本語では「コード網羅率」などの名称で呼ばれていますので、覚えておいてください。

ちなみに、カバレッジ(網羅率)の測定方法には主に下記の4つが挙げられます。

  • ◆文網羅:ソースコードの一行一行がテストで実行されたかどうかで判断
  • ◆条件網羅:条件分岐の真と偽の両方がテストで実行されたかどうかで判断
  • ◆経路網羅:すべての経路でテストが実行されたかどうかで判断
  • ◆入口・出口網羅:すべてのメソッドの呼び出しがテストで実行されたかどうかで判断

そして、「どこまでテストが終わっているのか」「どの条件でテストを行ったのか」をすべて可視化することができるのが、Visual Studioのカバレッジ機能です。
では、カバレッジ機能を使いたくなってきたところで、さっそく測定方法を見ていきましょう。

Visual Studioでカバレッジを測定する方法

測定方法は下記のとおりです。

  1. テストエクスプローラーを開く(Ctrl+EまたはCtrl+T)
  2. 「実行」メニューの▼をクリックし、「すべてのテストのコード カバレッジの分析」を選択
  3. ↓テストが実行されます。

  4. コードカバレッジの結果ウィンドウを開く
  5. 「コードカバレッジの色分け表示」で、網羅されている箇所とされていない箇所が色分けされます

以上が、カバレッジを測定する方法です。もっと詳しく知りたい方は、こちらもご参照ください。
(マイクロソフト公式サイト)
https://docs.microsoft.com/ja-jp/visualstudio/test/using-code-coverage-to-determine-how-much-code-is-being-tested?view=vs-2019

PL
ちなみに、網羅率は80%~90%を目指すといいですよ。
PG
「100%=完ぺきなソースコード」というわけではないんですね。

カバレッジは効率的にテストができる便利な機能

この記事では、Visual Studioのカバレッジ機能をご紹介しました。カバレッジ機能を使えさえすれば、手間のかかるテストも短期間で終わらせることができます。ぜひ、チーム内で活用してみてください。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)