Smother is a wrapper utility around coverage.py that measures code coverage separately for each test in a test suite. Its main features include:
Smother contains plugins for nose and pytest, and behaves similarly to coverage.py:
py.test --smother=my_module test_suite/ or nosetests --with-smother --smother-package=my_module test_suite/
These commands create a .smother file that can be queried by the smother CLI
smother lookup foo.bar # which tests visited module foo.bar? smother lookup foo.bar:120-122 # or just some lines in that file? smother lookup foo.bar:baz # or just the `baz` function? smother diff # given local modifications to my repo, what tests might have broken? smother diff | xargs py.test # just run them! smother to_coverage # build a vanilla .coverage file from a .smother file smother csv test.csv # dump all (application, test) pairs to a file
Smother was designed to make it easier to work with legacy codebases. Such codebases often have several properties that make rapid iteration difficult:
TODO: Figure out how to actually get changelog content.
Changelog content for this version goes here.