从.coverage文件生成html报告

时间:2014-02-25 16:05:56

标签: python code-coverage nose python-coverage

我正在寻找一种方法来组合多个.coverage文件,然后生成一个HTML报告。 目前我只使用以下命令从一个源生成覆盖,并且它工作正常:

nosetests --with-coverage --cover-erase --cover-html --cover-html-dir=/var/www/coverage

现在我想首先将过程分成两部分:

  1. 生成覆盖率报告(.coverage文件)
  2. 从.coverage文件
  3. 生成html报告

    第一步是明确的,与之前省略html部分的命令相同。 然后我在许多地方看到只运行coverage html,包括python coverage package website。 当我这样做时,我获得了我的报道和以下

    的控制台打印报告
    ======================================================================
    ERROR: Failure: ImportError (No module named html)
    ----------------------------------------------------------------------
    Traceback (most recent call last):
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/nose/loader.py", line 402, in loadTestsFromName
        module = resolve_name(addr.module)
      File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/nose/util.py", line 311, in resolve_name
        module = __import__('.'.join(parts_copy))
    ImportError: No module named html
    

    就像鼻子在某种程度上干扰:

    $ coverage report -m
    Usage: nosetests [options]
    
    nosetests: error: -m option requires an argument
    
    $ coverage --help
    Usage: nosetests [options]
    

1 个答案:

答案 0 :(得分:0)

看起来您的coverage包未正确安装。尝试运行pip freeze,看看您是否安装了独立的coverage==3.5.3或同等产品。如果您没有任何内容,请尝试pip install coverage。安装完成后,您将可以访问python二进制实用程序文件夹中的coverage二进制文件,而看起来像是nosetests别名。