E2E Test Coverage
Track code coverage across repos with Codecov and SonarCloud — and surface coverage delta as a deploy risk signal.
Overview
Most teams track coverage as a single number: "we're at 73%." But aggregate coverage percentage is a vanity metric. What actually predicts deployment risk is whether the specific files changed in a PR are covered — and whether coverage is going up or down over time.
Koalr's Test Coverage page integrates with Codecov and SonarCloud to surface per-repo coverage trends, PR-level coverage delta, and uncovered high-churn files.
Supported integrations
| Platform | Setup | Tier 1 features | Notes |
|---|---|---|---|
| Codecov | Connect Codecov | Coverage %, delta, flags, PR coverage | Market leader, richest API |
| SonarCloud | Connect SonarCloud | Coverage %, new code coverage, quality gate | Enterprise standard, new_coverage metric is a differentiator |
Both can be connected simultaneously. Koalr normalizes data into a unified CoverageSnapshot model.
Key metrics
Coverage percentage
Total line coverage (and branch coverage where available) per repo. Displayed as current value and 30-day trend.
Coverage delta on changed files
This is the highest-value signal. When a PR modifies files with low or declining coverage, deploy risk increases — not because global coverage is low, but because the specific code being changed is untested.
Koalr computes this from Codecov's PR endpoint:
Coverage delta = coverage on changed files after PR − coverage on changed files before PR
A negative delta (PR drops coverage on changed files) is surfaced as a deploy risk signal (see Deploy Risk).
New code coverage (SonarCloud)
SonarCloud's new_coverage metric measures coverage specifically on lines of code that were added or changed in the branch — the "is my new code tested?" question. This is a quality gate signal: many teams fail PRs when new code coverage drops below a threshold (e.g., 80%).
Test pass rate
Percentage of test runs that pass, tracked per repo. A declining pass rate signals test suite health problems.
Failing test count
Raw count of currently failing tests. Surfaced as a badge on the repo card.
Dashboard sections
Organization coverage summary
- Average coverage % across all connected repos
- Repos below target — count of repos under the configured coverage threshold
- Coverage trend — org-wide week-over-week direction
- High-risk uncovered files — high-churn files with < 50% coverage
Repo coverage table
Sortable, filterable table of all connected repos:
- Repo name and branch
- Line coverage %
- Branch coverage % (if available)
- 30-day coverage trend (↑ / → / ↓)
- Test pass rate
- Failing test count
- Link to Codecov/SonarCloud report
Coverage trend chart
12-week line chart of org-wide average coverage. Overlay individual repos to compare.
PR coverage delta table
Most recent PRs with coverage impact:
- PR title, author, repo
- Coverage delta on changed files (green = improved, red = dropped)
- Deploy risk score for that PR
- Merged date
Uncovered hot paths
Files that are both high-churn AND have low coverage. These are the highest-priority files to add tests to:
- File path and repo
- Change frequency (changes/month)
- Current coverage %
- Link to Codecov file view
Coverage vs incident correlation
Koalr computes the Pearson correlation between weekly coverage % and weekly incident rate per repository. A strong positive correlation means coverage drops reliably precede incident spikes for that repo — a signal to prioritize test investment there.
See Coverage vs Incident Correlation for the full correlation panel documentation.
Setting coverage targets
Navigate to Integrations → Codecov → Settings to configure per-repository coverage thresholds:
- Org-wide minimum coverage — repos below this threshold appear in red (default: 70%)
- PR coverage delta alert — alert when a PR drops coverage by more than X% on changed files (default: 5%)
- New code minimum (SonarCloud) — minimum coverage required on new lines of code
Coverage as a deploy risk signal
Koalr integrates coverage data directly into deploy risk scoring:
- Coverage delta on changed files — PRs that drop coverage on their own changed files get a risk penalty
- Uncovered hot paths — changes to historically high-churn files with low coverage carry elevated risk
- Test pass rate decline — repos where test pass rate has been declining get an ambient risk signal
These signals appear in the Deploy Risk page and in GitHub Check Run annotations.
Relationship to other metrics
- Deploy Risk — coverage delta is a core deploy risk signal (Deploy Risk)
- Technical Debt — uncovered high-churn files are a key debt indicator (Technical Debt)
- DORA CFR — teams with declining coverage tend to have higher Change Failure Rate (DORA Metrics)
- Incident Correlation — coverage decline is statistically correlated with incident rate for many repos (Coverage vs Incident Correlation)