如何获得100%覆盖率测试

时间:2016-12-17 21:22:43

标签: python unit-testing tdd code-coverage

在进行TDD时,我执行覆盖并且结果看起来像

Name        Stmts   Miss  Cover   Missing
royread.py   72     14    81%     84-85, 96-110

实际上,我在上面的其他文件夹或一个目录中进行了导入功能的测试。因此,当我生成html时,我意识到我的覆盖范围较小,因为96-110是函数定义行。我的意思是下面是在覆盖期间跳过的行

if __name__ == '__main__':  
game_list = get_param(para1, para2) 
joystick_list = get_initial(para3, para4) 
mypath = get_path(game_list, joystick_list, test=True)
.
.
.
.
.
.
.
.
.
all_list = device_list["allList"] 
skip_start = device["header"]

我将这些函数导入到我测试函数的文件中,并从

开始
import unittest
from os import listdir
from os.path import isfile, join

from royread import get_param, get_initial,
from royread import mypath


class GameTest(unittest.TestCase):
    def test_get_param(self):
        device = "tekken"
        param = get_param(para1, para2)
        self.assertEqual(param["gamename"], "teken")

有人建议并帮助我获得超过90%的可能性,如果它不忽略功能定义线。 非常感谢您的任何提示或示例。

1 个答案:

答案 0 :(得分:0)

我获得了84%的覆盖率,我应用的方法是使用配置文件忽略这些功能定义行。链接在这里。 http://coverage.readthedocs.io/en/latest/config.html