我想使用带覆盖插件的nose2来获取Python包的覆盖范围,但是我很难配置它以仅覆盖我正在处理的包.调用包vimhdl
,我的覆盖部分unittest.cfg
如下所示:
[coverage] coverage = vimhdl
使用nose2,结果不包括包中的所有文件(可能是因为Coverage.py warning: Module vimhdl was previously imported, but not measured.
消息,但我不知道如何修复它).
此外,在打开给定文件的HTML报告时,诸如import logging
和模块的doc字符串之类的语句 被标记为未涵盖.
$ nose2 --with-coverage -vvv ... ---------------------------------------------------------------------- Ran 5 tests in 0.166s OK Coverage.py warning: Module vimhdl was previously imported, but not measured. ---------- coverage: platform linux2, python 2.7.10-final-0 ---------- Name Stmts Miss Cover --------------------------------------------------------- python/vimhdl/compilers/__init__.py 95 42 56% python/vimhdl/compilers/ghdl.py 92 41 55% python/vimhdl/config_parser.py 74 42 43% python/vimhdl/project_builder.py 269 164 39% python/vimhdl/source_file.py 126 51 60% --------------------------------------------------------- TOTAL 656 340 48%
另一方面,使用nosetests,结果包括所有文件.
$ nosetests --with-coverage -vvv Name Stmts Miss Cover Missing ------------------------------------------------------------ vimhdl.py 5 0 100% vimhdl/compilers.py 95 11 88% 46-47, 97, 106-108, 131-132, 149-150, 158 vimhdl/compilers/fallback.py 22 7 68% 31-32, 35, 38, 41, 44, 47 vimhdl/compilers/ghdl.py 92 21 77% 91-94, 107-108, 151-172, 182 vimhdl/compilers/msim.py 94 72 23% 49, 52-69, 73-102, 113-124, 128-135, 138-151, 154-159, 163-169, 176-179, 185-190 vimhdl/compilers/xvhdl.py 61 46 25% 38-40, 44-51, 54-76, 87-98, 101-105, 110-126 vimhdl/config.py 69 46 33% 21-22, 55-77, 81-83, 87-91, 95-105, 109-122, 126-135 vimhdl/config_parser.py 74 25 66% 33-34, 45-46, 50, 53-88, 117, 119, 124, 133 vimhdl/exceptions.py 12 4 67% 21, 24, 28, 31 vimhdl/project_builder.py 269 114 58% 23-24, 61-68, 92, 97, 102, 108, 115-121, 131-134, 139-146, 156, 169-170, 182-185, 205-219, 221, 237-273, 278-313, 332-336, 368-371, 373-376, 380-381, 384-385, 393-394, 400, 419-426, 430-431, 455-456, 462-476 vimhdl/source_file.py 126 25 80% 71, 86-87, 168, 172, 174, 176, 178, 197-198, 203-216, 219 vimhdl/static_check.py 104 88 15% 56-112, 119-132, 139-165, 169-188, 191-197, 200 vimhdl/utils.py 8 5 38% 24-28 ------------------------------------------------------------ TOTAL 1031 464 55%
如何配置nose2
coverage插件以仅覆盖给定模块?
如果有帮助,源代码在https://github.com/suoto/vim-hdl/tree/unstable上的github上.