Can I restrict nose coverage output to directory (

2019-03-14 17:28发布

My SUT looks like:

foo.py
bar.py
tests/__init__.py [empty]
tests/foo_tests.py
tests/bar_tests.py
tests/integration/__init__.py [empty]
tests/integration/foo_tests.py
tests/integration/bar_tests.py

When I run nosetests --with-coverage, I get details for all sorts of modules that I'd rather ignore. But I can't use the --cover-package=PACKAGE option because foo.py & bar.py are not in a package. (See the thread after http://lists.idyll.org/pipermail/testing-in-python/2008-November/001091.html for my reasons for not putting them in a package.)

Can I restrict coverage output to just foo.py & bar.py?

Update - Assuming that there isn't a better answer than Nadia's below, I've asked a follow up question: "How do I write some (bash) shell script to convert all matching filenames in directory to command-line options?"

8条回答
孤傲高冷的网名
2楼-- · 2019-03-14 18:16

If you use coverage:py 3.0, then code in the Python directory is ignored by default, including the standard library and all installed packages.

查看更多
祖国的老花朵
3楼-- · 2019-03-14 18:18

For anyone trying to do this with setup.cfg, the following works. I had some trouble figuring out how to specify multiple packages.

[nosetests]
with-coverage=1
cover-html=1
cover-package=module1,module2
查看更多
登录 后发表回答