1
私はファイルを持っている行のヒット数、test_basic.py
:pytestカバレッジ -
class Basic():
def __init__(self):
print ('Basic initialized')
def add_num(self, num1, num2):
counter = 0
while (counter < 5):
counter = counter + 1
return (num1 + num2)
def sub_num(self, num1, num2):
return (num1 - num2)
def prod_num(self, num1, num2):
return (num1 * num2)
def div_num(self, num1, num2):
if not num2:
return 0
return num1/num2
def lhospital(self, num1, num2):
if num2 == 0:
return 10000000
else:
return num1/num2
カバレッジを取得するには、私は、このコマンドを実行します。私は、basic.py
別のファイルいる
class TestCalculator():
def test_calculator(self):
from basic import Basic
basic_obj = Basic()
sum_nums = basic_obj.add_num(1,2)
diff_num = basic_obj.sub_num(3,5)
prod_num = basic_obj.prod_num(5,5)
quo_num = basic_obj.div_num(3,0)
:
py.test --cov-report xml --cov=test/lib test/lib/test_basic.py
coverage.xml
において、I Hカバレッジレポートをアベニューとbasic.py
でライン6,7のための例である:basic.py
で
<line branch="true" condition-coverage="100% (2/2)" hits="1" number="6"/>
<line hits="1" number="7"/>
、ライン6,7は、複数回実行されます。 .coveragerc
ファイルを変更する方法はありますか、それともラインのヒット数に複数の実行が反映されるような何か他の方法がありますか?
ありがとうございます!
この拡張機能を実装できるファイルを教えてください。 https://bitbucket.org/ned/coveragepy/src/9cf891202041c5cbafc19e8c2d5467db77100066/coverage/?at=default –
最初にstdlibの "trace"モジュールを使用してみてください。それにはこの機能があります。 –