Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
Trace coverage through the whole pipeline: tests must collect data, a report must be generated, the report must reach the publisher, and that publisher must parse and map it to the checked-out source. A green test job proves none of those later steps. First identify what is missing—a percentage, line annotations, or a downloadable report—then inspect the last stage that succeeded.
Identify what is missing
Coverage can appear in different places, and each display has its own configuration. A percentage in a job log or pull-request widget may be extracted from console output. Line-by-line annotations generally require a machine-readable report and an explicit publisher setting. A browsable HTML report needs to be retained as an artifact or served by a report viewer.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
GameStop Physical Gift Card | $25.00 | Buy on Amazon |
| 2 |
|
Xbox Physical Gift Card | $25.00 | Buy on Amazon |
| 3 |
|
$100 XBOX Gift Card [Digital Code] | $100.00 | Buy on Amazon |
| 4 |
|
Fortnite Physical Gift Card | $50.00 | Buy on Amazon |
| 5 |
|
$25 PlayStation Store Gift Card [Digital Code] | $25.00 | Buy on Amazon |
- No percentage: Check whether the test command collected coverage and whether the platform is configured to extract a percentage from its output.
- No line annotations: Check for a supported line-level report, its upload configuration, and source-path mapping.
- No downloadable report: Check that the report was generated and preserved or published for later access.
For example, GitLab documents percentage extraction through its coverage keyword separately from line annotations configured with artifacts:reports:coverage_report. GitLab coverage reporting documentation
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Trace the report from test run to display
- Tests run with coverage enabled. Inspect the exact CI command and logs. A normal test command may not enable coverage collection.
- Coverage data is recorded. Look for the tool’s raw data file or collection summary. Tests passing is not evidence that coverage data was written.
- A report is generated. Check for the expected XML, LCOV, or other report after the report-generation step. Confirm the working directory and actual output path.
- The publisher receives the report. Inspect the configured file path or glob, artifact settings, cross-job transfer, and upload logs.
- The publisher parses and maps it. Check that the format is supported and valid, that line data is present, and that report paths match files in the checked-out source.
- The requested display is configured. Verify that the destination is set up for a percentage, annotations, or a downloadable report—as applicable.
These checkpoints separate a missing data file from a missing generated report, a transfer failure, a parser problem, and a display setting. GitLab’s documentation describes the distinct configuration for percentages and line annotations. GitLab coverage reporting documentation
#1 Best Overall
- Redeemable at US GameStop, EB Games, Babbage's, Electronic Boutique, EBX, Planet X, and Software Etc. stores. Also redeemable online at and GameStop.com and EBGames.com.
- Over 6,100 stores located throughout the United States.
- GameStop. Power to the Players.
- Redemption: Instore and Online
- No returns and no refunds on gift cards.
Check for the report immediately before upload
Run a short diagnostic in the publishing job just before its upload or publish step. Adapt it for the runner’s operating system and shell; this POSIX-shell example only lists files beneath the current working directory:
pwd
find . -type f \( -name '*.xml' -o -name '*.info' -o -name '*.lcov' \) -print
If the expected file is absent, check whether report generation ran, whether it ran in the right module or directory, and whether the output directory was customized. If the file exists, compare its path with the publisher’s configured path. These may be separate paths: the producer writes a file, the CI system may transfer it under an artifact path, and the consumer resolves its own configured path.
Match the report format and path to the producer
Coverage formats are not interchangeable. The tool generating a report and the service consuming it must agree on a supported format. If conversion is needed, make it an explicit step and check that the converted file is nonempty, valid, and contains the expected source and line data. Example paths below are tool-specific; project configuration, module layout, working directory, and customized output directories can change them.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Rank #2
- XBOX GIFT CARD: Buy full digital game downloads, game add-ons, in-game currency, memberships, devices, apps, movies, TV shows, and more.
- DIGITAL GAMES: Choose from hundreds of games, from AAA to indie options. Start playing the moment your most anticipated game is available when you pre-order and pre-download it.
- GAME AD-ONS: Extend the experience of your favorite games with add-ons and in-game currency.
- MOVIES & TV SHOWS: Rent or buy new and popular movies and TV shows from a massive library.
- PERFECT GIFT: Great as a gift for a friend or yourself. Xbox Gift Cards are easy to use, never expire, and give the freedom to pick the gift they want. Enjoy more ways to play without a credit card attached to your Microsoft account.
Python with pytest-cov
The documented GitHub coverage example uses pytest --cov=. --cov-report=xml to produce Cobertura-compatible XML using pytest-cov. Confirm where the installed configuration writes the file and configure the publisher to read that actual location. GitHub code coverage setup documentation
Maven with JaCoCo
JaCoCo’s Maven report goal can produce XML, HTML, and CSV. Its output location depends on Maven’s reporting output directory and project configuration, so do not assume a default path without checking the build and workspace. JaCoCo Maven report goal documentation
GitLab JaCoCo visualization
GitLab’s JaCoCo example generates a report and declares its XML path under artifacts:reports:coverage_report. The configured path must identify the file actually generated in that job. The percentage setting is separate from this report configuration. GitLab JaCoCo visualization documentation
Rank #3
- THE PERFECT GAMING GIFT — Buy an XBOX Gift Card for yourself or a friend and let them choose the games, add‑ons, subscriptions, and accessories they want most.
- USE FOR GAMES & CONTENT — Redeem for thousands of digital XBOX games, from backward compatible classics to the latest new releases, plus DLC and in‑game currency.
- GAME PASS READY — Apply your balance toward XBOX Game Pass Ultimate to play new titles on day one* and access a library of hundreds of high‑quality console games.
- PRE‑ORDER & PRE‑INSTALL GAMES — Use your balance to pre‑order and pre‑download upcoming titles so you’re ready to play the moment they launch.
- NO FEES OR EXPIRATION — XBOX Gift Cards never expire and have no service fees, so your balance is ready whenever you are.
Make reports available across jobs and workers
A file created in one CI job is not automatically present in another. Preserve it as an artifact or use the platform’s supported transfer mechanism, then download or expose it in the publishing job. GitHub describes workflow artifacts as a way to persist job output and share it between jobs; caching serves a different purpose. GitHub workflow artifacts documentation
Matrix jobs, split test suites, and parallel workers add another requirement: the reporting job must receive the relevant data from every worker, and the coverage tool may need to combine those files before generating a final report. Avoid overwriting same-named data files, and ensure the combined data belongs to the same source revision. Coverage.py documents combining parallel data and remapping source paths when runs use different directories or machines. Coverage.py combining data documentation
Fix reports that upload but do not annotate source
An uploaded report can still yield no or partial line annotations. Check whether the report contains the affected files and lines, whether the report and checkout refer to the same revision, and whether recorded source paths map to files in the checkout. Also check include and omit filters, excluded or generated files, module aggregation, and whether the destination only annotates changed lines.
Rank #4
- An Epic Games account is required to redeem an Epic Games Store Card code
- If playing on a console platform (PlayStation Network, Xbox Live, Nintendo Switch or Mobile) you need to link your Epic Games account to that gaming platform (one time) to redeem your gift card code
- The 16 digit code on the back of the card WILL NOT work if redeemed directly through your gaming platform (PlayStation Network, Xbox Live, Nintendo Switch, Mobile, etc.)
- Note: Nintendo devices do not support Fortnite Shared Wallet, so V-Bucks purchased using your account balance will not show up on your Nintendo device. However, if you purchase items in the web Item Shop — or another platform where you play Fortnite — those items will be available in your Locker across all platforms.
- Redemption: Online
Coverage.py provides relative_files and [paths] configuration for mapping paths when combining reports, and --debug=pathmap for inspecting that mapping. Coverage.py combining data documentation
For GitLab’s JaCoCo view, XML line data is used to annotate changed lines. Its indicators distinguish covered lines, uncovered lines, and lines with no coverage information. A line with no coverage information has not thereby been established as uncovered. GitLab JaCoCo visualization documentation
Free tools Windows power users keep installed
One-click scans. No signup required.
Check subprocesses, parallel collection, and shutdown
If tests run code in subprocesses or parallel workers, the process that started coverage may not collect their execution automatically. Collection may need configuration at process startup; separate worker data may need to be combined; and a process killed before a clean shutdown may not save its data. Where tests use workers or an application server, check that the tool’s supported shutdown or signal path flushes coverage before the job ends.
Best Value
- Redeem for anything on PlayStationStore: games, add-ons, PlayStationPlus and more.
- Everything you want to play. Choose from the largest library of PlayStation content.
- Use gift card funds to contribute towards PlayStationPlus memberships.
These behaviors are tool-specific, not universal. Coverage.py’s subprocess documentation describes patch = subprocess together with parallel collection and combining, and explains how worker shutdown affects data recording. Follow the configuration for the installed Coverage.py version. Coverage.py subprocess measurement documentation
Platform-specific publication checks
GitLab
For a percentage, check the coverage setting and whether its extraction pattern matches the job output. For JaCoCo line visualization, check that the XML is properly formatted and that artifacts:reports:coverage_report points to the generated file. These settings serve different displays. GitLab coverage reporting documentation GitLab JaCoCo visualization documentation
GitHub Actions
Check whether the workflow preserves the report as an artifact and transfers it to any separate publishing job. GitHub’s documented coverage setup has prerequisites and workflow configuration; do not assume that a test run alone enables coverage publication. Its example conditionally skips coverage upload for pull requests from forks. Do not expose secrets to untrusted pull-request code to force an upload; use a workflow and permissions model appropriate to the repository’s security boundary. GitHub code coverage setup documentation GitHub workflow artifacts documentation
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Jenkins
The Jenkins Coverage plugin publishes reports generated by other tools; it does not run coverage collection itself. Its configured report pattern resolves relative to the workspace, so confirm that the report exists there and that the pattern matches it. Jenkins Coverage pipeline step reference Jenkins Coverage plugin documentation
Symptom-to-cause checklist
| What you see | First checks |
|---|---|
| No raw coverage data | Confirm coverage instrumentation and the exact test command. If applicable, check subprocess configuration, parallel workers, and whether processes shut down cleanly. |
| Raw data exists, but no report file | Check that report generation ran, was not skipped, and used the expected working directory or module. |
| Report exists in the producer job but not in the publisher | Check artifact creation, cross-job transfer or download, permissions, configured paths, and upload logs. |
| Upload succeeds but the report is rejected or empty | Check the consumer’s supported format, XML validity where applicable, and whether the report contains source files and line data. |
| Percentage appears but line annotations do not | Configure the line-report mechanism separately; verify line-level data and source-path mapping. |
| Only some files or lines are missing | Check filters and exclusions, module aggregation, revision and path mismatches, and whether the destination limits annotations to changed lines. |
| Results differ across matrix jobs | Transfer all relevant data, avoid overwriting files, combine data where required, and verify that the inputs describe the same source revision. |
If the destination cannot annotate the report format you have, retain an HTML report as a downloadable artifact or publish it through a compatible report viewer. That offers a way to inspect coverage; it does not create pull-request annotations. GitHub workflow artifacts documentation Jenkins Coverage plugin documentation
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

