While other code coverage tools typically just accumulate coverage data Coco stores information per individual test. Alongside with the test name, FAIL vs. PASS status and optional HTML-formatted comments.
This way various types of analysis can be performed in the post-processing phase:
- Calculation of the optimal order of test execution that will most quickly maximize the overall coverage.
- Comparison of coverage between test executions
- Comparison of coverage between different software builds
- Analysis of test coverage for source code patches in the review process
- Determines minimal set of tests to cover a source code patch
As a result Coco can help in various stages of the application life-cycle. As part of post-commit patch reviews and mutation testing for example.