2014-02-21 56 views
6

未经测试的功能与coverage,我能得到的未经测试功能百分比显示出与覆盖

coverage run setup.py test ; coverage report 

这样

Name       Stmts Miss Cover 
------------------------------------------------- 
script       565 278 51% 
setup        6  0 100% 
... 

我怎么能得到的未经测试的函数的名称?

+0

这不是未经测试的功能的措施。这是*语句*的一种措施,它没有被执行。 – delnan

+0

与[coveragepy vim插件](https://github.com/alfredodeza/coveragepy.vim),我可以看到“发现”行:) – JuanPablo

+0

或[SublimePythonCoverage sublime plugin](https://github.com/ davisagli/SublimePythonCoverage) – JuanPablo

回答

11

如果运行coverage report -m它会显示在输出中未被覆盖的线路缺少列下:

Name      Stmts Miss Cover Missing 
------------------------------------------------------- 
my_program     20  4 80% 33-35, 39 
my_other_module    56  6 89% 17-23 
------------------------------------------------------- 
TOTAL      76  10 87% 

如果运行coverage html它会创建一个网页,在那里你可以浏览你的来源,看到了裸露线突出一种特殊的颜色。

如果您希望在未覆盖的线上进行自己的处理,那么您可以运行coverage xml,它将生成一个包含缺失行的XML文件。

如果您确实需要功能的name而不仅仅是行号(例如,您希望所有包含至少一条未覆盖行的函数),那么您必须通过阅读source和xml报告并处理他们与你自己的计划。