coverage module

The most important thing in the coverage module is the coverage.Coverage class, described in The Coverage class, but there are a few other things also.


A tuple of five elements, similar to sys.version_info: major, minor, micro, releaselevel, and serial. All values except releaselevel are integers; the release level is 'alpha', 'beta', 'candidate', or 'final'. Unlike sys.version_info, the elements are not available by name.


A string with the version of, for example, "5.0b2".

class coverage.CoverageException

The base class of all exceptions raised by

Starting automatically

This function is used to start coverage measurement automatically when Python starts. See Measuring sub-processes for details.


Call this at Python start-up to perhaps measure coverage.

If the environment variable COVERAGE_PROCESS_START is defined, coverage measurement is started. The value of the variable is the config file to use.

There are two ways to configure your Python installation to invoke this function when Python starts:

  1. Create or append to to add these lines:

    import coverage
  2. Create a .pth file in your Python installation containing:

    import coverage; coverage.process_startup()

Returns the Coverage instance that was started, or None if it was not started by this call.

Return type:

Coverage | None