Djangoコードテストのカバレッジを測る

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

テストの進捗率、テストの網羅率を指す。
これを実行することで、テストが制作したときの観点を網羅できているかを確認することができる。

品質評価の指標にも使用できるため、

網羅率が低い = 品質が低い

というように設定することもできる。

モジュールの設定

requirements.txt に下記を追加する。

coverage==6.5.0

実行

下記のコマンドを実行することで、カバレッジを取得するテストを実行する。

coverage run [アプリケーション]/manage.py test [アプリケーション]

レポートをコマンドラインの結果として出力するためには、下記コマンドを実行する。

coverage report

レポートをhtmlに出力することもできる。
そのためには、下記コマンドを実行する。

coverage html

コマンドが実行されると、「htmlcov」というディレクトリが作成され、htmlが出力される。
出力された「index.html」を確認することにより、レポートを確認できる。

また、htmlで出力されたレポートは、「index.html」の中のリンクをクリックすることで、詳しい内容を確認することができる。

参考

coverage · PyPI