Skip to main content

Smart coverage plugin for pytest.

Project description

Smart coverage measurement and reporting for py.test test suites.

Test suites are usually structured parallel to (or integrated with) the structure of the code they test. If you ask py.test to run a certain subset of your tests, you shouldn’t have to also tell coverage which subset of your code it should measure coverage on for that run. With pytest-smartcov, you don’t have to.

Prerequisites

pytest-smartcov requires Python 2.7 or higher and coverage 3.6 or higher.

Usage

If pytest-smartcov is installed and you provide a smartcov_paths_hook setting in your pytest.ini, coverage will automatically be measured on all your test runs, unless you provide the --no-cov flag.

Configuration

To use pytest-smartcov, provide a smartcov_paths_hook ini-config setting which is the Python dotted import path to a function. This function should accept as its single parameter the list of test paths specified on a py.test command line, and should return the list of paths on which code coverage will be measured.

Reporting

If 100% of the measured code was covered, pytest-smartcov will output a single line at the end of test run notifying you that you have 100% coverage.

If you have less than 100% coverage on the measured code, pytest-smartcov will output a terminal report including only those files which had less than 100% coverage.

If there was less than 100% overall coverage, pytest-smartcov will also output an HTML report (to the htmlcov/ directory by default, though this can be configured normally in .coveragerc).

CHANGES

0.1 (2014.10.28)

  • Initial working version.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytest-smartcov-0.2.tar.gz (4.3 kB view details)

Uploaded Source

File details

Details for the file pytest-smartcov-0.2.tar.gz.

File metadata

File hashes

Hashes for pytest-smartcov-0.2.tar.gz
Algorithm Hash digest
SHA256 1bac69f7d7ff5c0a66b1fe1000afe578f8cbc9640ab6af05d4347de826884dbe
MD5 9f26fc3e22cd1e7c5c9fd2b020a9a978
BLAKE2b-256 802757c54d9d437c82decb4f43907199d1bb4be1bc1afdc11c3c88c00971bd8c

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page