【问题标题】:nosetests coverage including Python packages鼻子测试覆盖范围,包括 Python 包
【发布时间】:2011-07-26 09:40:36
【问题描述】:

我正在使用nosetests 运行一些单元测试,并使用以下方式向我展示我们的代码覆盖率:

nosetests -w ./test --with-xunit --with-coverage --cover-tests

这很好用,除了我在输出中看到一堆 Python 包。这是一个示例:

ctypes._endian                 34     12    35%   15-20, 24-32, 50-60
ctypes.macholib                 1      1   100%   
email                          29     25    86%   56-57, 65-66
email.errors                   15     14    93%   39

如何排除这些包?

【问题讨论】:

    标签: python code-coverage nose coverage.py python-coverage


    【解决方案1】:

    试试nosetests --cover-package=<name> 选项。它将覆盖输出限制为列出的包/模块。如果您的测试涵盖多个包,则可以多次使用它。

    【讨论】:

    • 注意,如果您想要多个包,可以多次使用--cover-package=<name> 开关。
    • 我花了 15 分钟的时间想知道为什么我只使用配置文件获得了一个(最后一个)列出的封面包,但愚蠢的是我多次调用 cover-package=foo \n cover-package=bar。我是个笨蛋,但希望其他人能看到!
    • 为了指定多个包,需要用逗号分隔它们,例如--cover-package=first.package,another.package。即使在 the nosetests docs 中也没有明确描述这一点,但我从这里的 example 中学到了它:nose.readthedocs.io/en/latest/…。多次使用该参数显然只会导致最后一个考虑的参数。
    猜你喜欢
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-09-09
    • 2016-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多