Skip to content
Novus Examples
lcov3 KB

Coverage — LCOV with Two Test Runs Over the Same Files

Two TN: blocks — a unit run and an integration run — each carrying a full record for the same two source files. A correct merge sums the DA hit counts per line and recomputes LH; a tool that keeps the last record seen throws away the unit run entirely.

Preview — first 50 lineslcov
TN:novus-checkout-unit
SF:src/cart/pricing.js
FN:2,unitPrice
FN:8,quantityMultiplier
FN:13,roundHalfUp
FN:19,applyTax
FN:25,bulkRate
FN:31,convertCurrency
FNDA:25,unitPrice
FNDA:8,quantityMultiplier
FNDA:9,roundHalfUp
FNDA:37,applyTax
FNDA:35,bulkRate
FNDA:0,convertCurrency
FNF:6
FNH:5
BRDA:5,0,0,11
BRDA:5,0,1,2
BRDA:15,1,0,2
BRDA:15,1,1,13
BRDA:24,2,0,2
BRDA:24,2,1,-
BRDA:33,3,0,6
BRDA:33,3,1,-
BRF:8
BRH:6
DA:2,13
DA:3,21
DA:4,23
DA:5,10
DA:6,8
DA:8,2
DA:9,47
DA:10,2
DA:11,0
DA:12,29
DA:13,41
DA:15,14
DA:16,36
DA:17,40
DA:18,5
DA:19,33
DA:20,0
DA:22,47
DA:23,18
DA:24,29
DA:25,18
DA:26,42
DA:27,17
DA:29,33
263 lines total — download for the full file.

Specifications

Seed
61200
Format
LCOV tracefile
Records
4
Distinct Source Files
2
Test Names
2
Requires Merge
true
Line Endings
LF
Note
the integration run covers one line the unit run misses

Testing contract

Expected to pass
Scenario
Merge two LCOV runs that cover overlapping source files.
Expected result
Each source file appears once after the merge, its DA counts are the sum of the two runs, and the first line missed by the unit run is covered because the integration run reached it.

What is a .lcov file?

LCOV is a plain-text code-coverage tracefile format originally produced by the Linux Test Project's front end for gcov and now emitted by tooling across many languages. Records are grouped per source file between an `SF:` line and an `end_of_record` line, with `DA:` lines giving per-line hit counts, `FN:`/`FNDA:` lines covering functions, `BRDA:` lines covering branches, and `LF`/`LH`, `FNF`/`FNH`, `BRF`/`BRH` summary counters.

How to use this file

Use an example .lcov file to test coverage viewers, merge tools, and CI coverage gates — verifying that summary counters match the detail lines, that multiple source records are merged rather than overwritten, and that branch data survives conversion to Cobertura or JSON.

How to use this file for testing

“Coverage — LCOV with Two Test Runs Over the Same Files” is a deterministic Novus Examples fixture for Conversion testing, Code parsing, Schema validation. The same content exported across many formats and linked as a group, so you can convert one and diff against the expected twin.

Documented properties for this file: seed 61200 · 4 records · LF. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Test and coverage reports document their totals (suites, cases, passes, failures, skips, covered lines) in the spec table. Point your CI dashboard, coverage gate, or report converter at the file and assert those counts survive; format twins carry identical numbers so a conversion can be scored exactly.

Generated by generation/testing.py. Free for any use, no attribution required — license.