enable python coverage for subprocesses
Project description
This package installs a pth file that enables the coveragepy process_startup feature in this python prefix/virtualenv in subsequent runs.
See: http://nedbatchelder.com/code/coverage/subprocess.html
Demo:
$ 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%
For projects that need to cd during their test runs, and run many processes in parallel, I ensure a $TOP variable is exported, and I use this .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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for coverage_enable_subprocess-1.0.tar.gz
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 | fdbd3dc9532007cd87ef84f38e16024c5b0ccb4ab2d1755225a7edf937acc011 |
|
| MD5 | f8e922de8b7fceedd7767da0e708030a |
|
| BLAKE2b-256 | 31f457693bcf041ba641501b7a2fafc9d3d2de647355d78c6a2e07fb53648eaa |
Close
Hashes for coverage_enable_subprocess-1.0-py2.py3-none-any.whl
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 | 27982522339ec77662965e0d859da5662162962c874d54d2250426506818cbdc |
|
| MD5 | 6577ff11e7cad7c8c55e15864df21584 |
|
| BLAKE2b-256 | 3158d8dd7edbf5e120942b6395b4c034506c68e56f656074522c83b59d9a4991 |