11

我正在使用带有覆盖插件的鼻子(通过django-nose)来检查我的 Django 项目的测试覆盖率。

我已将鼻子配置为在每次测试运行时生成 HTML 覆盖率报告:

NOSE_ARGS = [                                                                   
    '--with-coverage',                                                            
    '--cover-package=foot',                                                       
    '--cover-html',                                                               
    '--cover-html-dir=cover',
]

现在,我想禁用每次测试运行后显示的纯文本覆盖率报告;HTML 功能更强大,而且格式错误的长表格让人很难看到实际的测试输出。似乎也nosetests没有coverage这样的选择,或者我只是找不到?

4

2 回答 2

2

(取自这个相关问题

您可以安装nose-cov

pip install nose-cov

它可以更好地控制报告选项。然后,更改--with-coverage--with-cover例如

NOSE_ARGS = [
 '--with-cov',
 '--cov-report', 'html',
]

它将导出到 HTML 但抑制控制台输出。

于 2014-07-18T15:24:50.770 回答
1

一个快速而肮脏的解决方法是注释掉生成未格式化的覆盖率报告的行nose/plugins/cover.py

def report(self, stream):
    ....
    log.debug("Coverage report will cover modules: %s", modules)
    #self.coverInstance.report(modules, file=stream)
于 2012-07-30T16:03:40.690 回答