2017-07-04 12 views
0

次のpythonプロジェクトの構造を検討してください。pythonでユニットテストのないファイルを表示するnosetestsカバレッジレポート

Car.py 
test_car.py 
Van.py 
__main__.py 

私は鼻でコードカバレッジを実行すると、それが唯一のユニットテストが書かれているファイル(すなわちCar.pyは、ユニットテストのtest_car.pyを持っている)を考えます。私は次のコマンドを使ってレポートを生成しました。

nosetests --with-coverage --cover-erase --cover-html 

これは、カバレッジレポートを生成し、次の。

. 
Name  Stmts Miss Cover 
---------------------------- 
Car.py  11  3 73% 
---------------------------------------------------------------------- 
Ran 1 test in 0.007s 

OK 

しかし、私のプロジェクトにはさらに多くのファイル(Van.py)があります。しかし、カバレッジレポートにはそれらのファイルが含まれていませそのレポートがすべてのファイルを考慮すると、その最終パーセンテージは73%未満になります。

すべてのファイルを考慮してカバレッジレポートを生成するにはどうすればよいですか。ユニットテストのないファイルは、レポートにコードカバレッジを0%表示する必要があります。私のプロジェクトはこのサンプルよりはるかに大きいです。この要件を達成するにはどうすればよいですか?

答えて

0

かなり簡単です。くそー、私はRTMしませんでした。これを行うにはフラグ--cover-inclusiveがあります。 「NOSE_COVER_INCLUSIVE」のファイルをすべてインポートしないと、テストカバレッジの穴を発見するのに便利です。[NOSE_COVER_INCLUSIVE] "

ここではその使い方を説明しています。

nosetests --with-coverage --cover-erase --cover-inclusive --cover-html 
関連する問題