diff --git a/docs/contexts.rst b/docs/contexts.rst index e5256fcc..c502c1d6 100644 --- a/docs/contexts.rst +++ b/docs/contexts.rst @@ -2,10 +2,12 @@ Contexts ======== -Coverage.py 5.0 can record separate coverage data for different contexts during +Coverage.py 5.0 can record separate coverage data for `different contexts`_ during one run of a test suite. Pytest-cov can use this feature to record coverage data for each test individually, with the ``--cov-context=test`` option. +.. _`different_contexts`: https://coverage.readthedocs.io/en/stable/contexts.html + The context name recorded in the coverage.py database is the pytest test id, and the phase of execution, one of "setup", "run", or "teardown". These two are separated with a pipe symbol. You might see contexts like:: @@ -16,3 +18,12 @@ are separated with a pipe symbol. You might see contexts like:: Note that parameterized tests include the values of the parameters in the test id, and each set of parameter values is recorded as a separate test. + +To view contexts when using ``--cov-report=html``, add this to your ``.coveragerc``:: + + [html] + show_contexts = True + +The HTML report will include an annotation on each covered line, indicating the +number of contexts that executed the line. Clicking the annotation displays a +list of the contexts.