sixtine-coverage can merge route-level coverage with code coverage.
Try it directly in the bundled demo report: demo-report.html.

mode: status
# AuthenticationService
GET /api/rest/v1/authentication/modes 200:1
POST /api/rest/v1/authentication/login 2 200:3
# TenantService
GET /api/rest/v1/tenants 200:4
GET /api/rest/v1/tenants/{id} 0
mode: status# ServiceNameMETHOD /path counts0 means no hits200:3 means three responses with HTTP 2002 200:3 means two unspecified + three with status 200-1:2 means two connection failures<METHOD> <PATH> <TOKEN> [<TOKEN> ...]
Where each <TOKEN> is one of:
0<count> (unspecified responses)<status>:<count>Examples:
GET /api/rest/v1/tenants 200:12POST /api/rest/v1/login 3 200:10 401:2GET /api/rest/v1/admin/metrics 0# TenantService, # AuthenticationService)/tenants/{id})-1-1:count is useful for transport or network failures where no HTTP status code was returned.
mode: statusMETHOD + PATH within the same service (recommended)