Code Coverage or Test Coverage is a way to measure what lines of code and branches in your code that are utilized during testing.
Coverage tools are an important part of software engineering.
But there's also lots of different opinions about using it.
- Should you try for 100% coverage?
- What code can and should you exclude?
- What about targets?
I've been asked many times what I think about code coverage or test coverage.
This episode is a train of thought brain dump on what I think about code coverage.
We'll talk about:
- how I use code coverage to help me write source code
- line coverage and branch coverage
- behavior coverage
- using tests to ask and answer questions about the system under test
- how to target coverage just to the code you care about
- excluding code
- good reasons and bad reasons to exclude code
And also the Pareto Principle or 80/20 rule, and the law of diminishing returns and how that applies (or doesn't) to test coverage.Support Test & Code : Python Testing for Software Engineering