Details
-
Improvement
-
Status: Resolved
-
Minor
-
Resolution: Won't Fix
-
None
-
None
-
Patch
Description
I would like to propose integration of JaCoCo coverage library with ZooKeeper.
Purposes
- To find poorly covered methods, and improve JUnit testcases to cover them
- To estimate causes of flaky testcases (e.g.
ZOOKEEPER-2080,ZOOKEEPER-2252,ZOOKEEPER-1868) by comparing reports from succeeded experiments and failed ones (I'm recently interested in how we can systematically realize this.)
Advantages of JaCoCo
- Support recent JDKs (including JDK 8)
- Low overhead
- Released under EPL
- Note: cobertura has been removed from the code base because it is released under GPL (
ZOOKEEPER-75, http://www.apache.org/legal/resolved.html#category-x )
- Note: cobertura has been removed from the code base because it is released under GPL (
Usage
$ ant test #(plus optionally, -Dtestcase=.. -Dtest.method=..)
$ ant jacoco-report
$ x-www-browser build/test/jacoco/reports/index.html &
Example: jacoco-report-example.zip
Possible Future Work
- Integrate to Jenkins buildbot so that we can check coverage after each of builds
Attachments
Attachments
Issue Links
- relates to
-
ZOOKEEPER-2294 Ant target generate-clover-reports is broken
- Closed
- links to