pra*_*een 17 python testing code-coverage
我试图实现基本python模块的100%覆盖率.我使用Ned Batchelder的coverage.py模块来测试它.
1 class account(object):
2 def __init__(self, initial_balance=0):
3 self.balance = initial_balance
4 def add_one(self):
5 self.balance = self.balance + 1
Run Code Online (Sandbox Code Playgroud)
这些是测试.
class TestAccount(unittest.TestCase):
def test_create_edit_account(self):
a = account1.account()
a.add_one()
Run Code Online (Sandbox Code Playgroud)
这是我得到的报道报道.
COVERAGE REPORT =
Name Stmts Miss Cover Missing
-----------------------------------------------------
__init__ 1 1 0% 1
account1 5 3 40% 1-2, 4
account2 7 7 0% 1-7
我们可以看到,第1-2和第4行未被覆盖,这些是定义.其余的行都被执行了.
以下是jcollado的回答:
我有Django鼻子的这个问题,它只涵盖了测试使用的线条.
为了解决这个问题,我首先启动manage.py了覆盖,然后启动了测试.
.coverage文件将包含两个报告.
我的第一个命令是打印我的项目设置的自定义.例:
coverage run ./manage.py settings && ./manage.py test myapp
Run Code Online (Sandbox Code Playgroud)