koverGate Report Skill
After writing or modifying tests in a module, check coverage gaps and close them.
Steps
Run the coverage gate task for the module you changed:
./gradlew :<module-name>:koverGateReportReplace
<module-name>with the Gradle module path (e.g.,:app,:core:data).Read the JSON gap report:
<module-name>/build/reports/kover/gap-report.jsonInterpret results:
- If
"passed": true— coverage requirements are met. Done. - If
"passed": false— examine thefilesarray. Each entry lists:uncoveredLines: line numbers with no coverage (mi > 0)missedBranchLines: line numbers with partial branch coverage (mb > 0)
- If
Write targeted tests to cover the identified lines and branches. Focus on:
- The specific line numbers listed in
uncoveredLines - The conditional paths at lines listed in
missedBranchLines
- The specific line numbers listed in
Re-run the task to confirm gaps are closed:
./gradlew :<module-name>:koverGateReportRepeat until
"passed": true.
Notes
- Adjust thresholds in your module's
build.gradle.ktsvia thekoverGate {}block if 100% is not the right target for a specific metric. - Disable metrics that don't apply with
disabledMetrics.set(setOf(CoverageMetric.BRANCH)). - The JSON report is always written (even on pass) at
build/reports/kover/gap-report.json.