Skip to main content

为子进程启用 python 覆盖

项目描述

该软件包安装了一个 pth 文件,该文件在后续运行中启用了此 python 前缀/virtualenv 中的 coveragepy process_startup 功能。

见: http: //nedbatchelder.com/code/coverage/subprocess.html

演示:

$ virtualenv tmpenv
$ . tmpenv/bin/activate
$ pip install coverage-enable-subprocess
$ touch .coveragerc
$ export COVERAGE_PROCESS_START=$PWD/.coveragerc
$ echo 'print("oh, hi!")' > ohhi.py
$ python ohhi.py
oh, hi!

$ coverage report
Name                              Stmts   Miss  Cover
-----------------------------------------------------
/etc/python2.6/sitecustomize.py       5      1    80%
ohhi.py                               1      0   100%
tmpenv/lib/python2.6/site.py        433    392     9%
-----------------------------------------------------
TOTAL                               439    393    10%

对于在测试运行期间需要 cd 并并行运行许多进程的项目,我确保导出了$TOP变量,并使用此 .coveragerc:

[run]
parallel = True
branch = True
data_file = $TOP/.coverage

[report]
exclude_lines =
    # Have to re-enable the standard pragma
    \#.*pragma:\s*no.?cover

    # we can't get coverage for functions that don't return:
    \#.*never returns
    \#.*doesn't return

    # Don't complain if tests don't hit defensive assertion code:
    ^\s*raise Impossible\b
    ^\s*raise AssertionError\b
    ^\s*raise NotImplementedError\b
    ^\s*return NotImplemented\b

    # Don't complain if tests don't hit re-raise of unexpected errors:
    ^\s*raise$

    # if main is covered, we're good:
    ^\s*exit\(main\(\)\)$
show_missing = True

[html]
directory = $TOP/coverage-html

# vim:ft=dosini

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

coverage_enable_subprocess-1.0.tar.gz (2.7 kB 查看哈希

已上传 source

内置分布

coverage_enable_subprocess-1.0-py2.py3-none-any.whl (4.0 kB 查看哈希

已上传 py2 py3