概要
カバレッジの計算からは外したい場合などがあると思います
その方法をいろいろ紹介します
環境
- Ubuntu 18.04
- Python 3.10.2
- pytest-cov 2.10.1
.coveragerc
[report]
exclude_lines =
if __name__ == .__main__.:
pragma: no cover
omit =
path/to/file/mymodule.py
path/to/file/mymodule2.py
ちょっと解説
if __name__
はメイン関数の実行をテスト対象にしたくない場合に使います
if __name__
配下でコールされているメソッドやクラスはすべてテストのカバレッジ対象から外れます
pragma: no cover
は除外したい関数があるときに便利です
関数の名前の横にコメントで # pragma: no cover
とすることでその関数をカバレッジの対象から除外できます
この方法の場合大本の関数を除外してもその関数内でコールされている他の関数は対象になるのですべて除外したい場合はすべてにコメントを入れる必要があります
omit を使ってファイルを指定するとそのファイル自体をすべて除外することができます
ファイルは複数指定することが可能です
0 件のコメント:
コメントを投稿