nosetests覆盖范围包括Python包

Chr*_*ams 7 python code-coverage nose coverage.py python-coverage

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

nosetests -w ./test --with-xunit --with-coverage --cover-tests
Run Code Online (Sandbox Code Playgroud)

这很好用,除了我在输出中看到一堆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
Run Code Online (Sandbox Code Playgroud)

如何排除这些包裹?

sam*_*ias 10

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

  • 注意,如果需要多个包,可以多次使用`--cover-package = <name>`开关. (4认同)