In addition to the usual statement coverage, coverage.py also supports branch coverage measurement. Where a line in your program could jump to more than one next line, coverage.py tracks which of those destinations are actually visited, and flags lines that haven’t visited all of their possible destinations.
--
coverage.py
docs: http://coverage.readthedocs.io/en/coverage-4.5.1/branch.html