Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
If a code quality dashboard shows no unit test results, first check whether your pipeline generated a test-execution report and whether analysis imported it. Coverage is separate: a coverage file does not necessarily contain test counts or pass/fail results, and a test-results file does not prove line coverage. Trace the report from the test command through generation, any CI job transfer, analyzer import and source-file matching.
First, identify which result is missing
Test execution results describe tests that ran, passed, failed or were skipped. Coverage describes which source lines or branches tests exercised. They are different data and may require separate commands, report formats and analyzer settings.
- No test count or pass/fail results: Check for a test-runner execution report and confirm the analyzer is configured to import that report type.
- Tests appear but coverage is missing: Check whether the test run used coverage instrumentation and generated a coverage report.
- A report exists but the dashboard is empty, zero or stale: Check its format, path, source-file mapping, exclusions, job transfer and association with the analyzed commit.
A successful test step alone does not show that either report was created or consumed. Likewise, uploading a report as a CI artifact makes it available to another job, but does not by itself import it into an analyzer.
Trace the report from test run to dashboard
Follow the file through the pipeline in order. A failure at any stage can leave the dashboard without results even when the build is green.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
- Run tests: Confirm the intended test command ran in the expected job and workspace.
- Collect the required data: Enable the test runner’s execution-results output for test counts; enable coverage instrumentation separately if coverage is wanted.
- Generate a machine-readable report: Confirm the command completed successfully and wrote a nonempty report in a format supported for that language and report type.
- Transfer it if jobs are separate: Persist the file after the test job and download it into the analysis job before analysis starts.
- Configure import: Point the analyzer to the actual report path, interpreted from the correct project, workspace or module root.
- Match and display: Check analyzer logs for import and file-matching messages, then inspect the dashboard for the same branch or commit after analysis completes.
Verify the report exists before analysis
Add temporary checks immediately after report generation and before analysis, adapting names and paths to your project:
pwd
find . -type f \( -name 'coverage.xml' -o -name 'jacoco.xml' -o -name 'lcov.info' -o -name 'test-results*.xml' \) -print
test -s path/to/report.xml
The search only finds these example filenames; change it to match your runner’s output. Check the command’s exit status, report timestamp and size. For XML, inspect the start of the file and verify it contains the expected report rather than an empty document, error page or different kind of results. Confirm that source filenames in it can be matched to files in the checked-out tree. Remove temporary checks after you have established the path.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
HTML reports can help a person inspect results, but the analyzer may require a machine-readable format. Use the analyzer’s current documentation for the language and report type; do not assume a format or path setting works across products.
Generate the right kind of report
These are examples of report generation, not universal analyzer configuration. Test-execution output and coverage output are distinct where both are shown.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Python
With pytest-cov, pytest --cov=package --cov-report=xml can produce Cobertura-compatible coverage XML. A separate command, pytest --junitxml=path/to/results.xml, writes JUnit-style test execution results. If coverage data has already been collected, Coverage.py can also write XML with coverage xml -o coverage.xml. See the pytest-cov reporting options, pytest JUnit XML option and Coverage.py XML command.
Java
JaCoCo’s Maven plugin instruments test execution and creates coverage reports. A notable failure case is configuring Maven Surefire or Failsafe with forkCount=0 or forkMode=never, which prevents the JaCoCo Java agent from recording coverage. If you set JVM arguments yourself, preserve the agent argument JaCoCo supplies. These points concern coverage collection, not a substitute for configuring test-execution report import. See the JaCoCo Maven plugin and JaCoCo prepare-agent guidance.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Go
go test -coverprofile=coverage.out ./... writes a coverage profile. Inspect it with go tool cover -func=coverage.out or go tool cover -html=coverage.out. The profile may need conversion if your analyzer expects another format. See the Go coverage documentation.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
.NET
Microsoft documents dotnet test --collect "Code Coverage;Format=Cobertura" for collecting Cobertura output. The resulting file can be nested beneath a test-results directory, so locate it rather than assuming it is in the repository root. See Microsoft’s code coverage samples and Visual Studio coverage format configuration.
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Check the analyzer path, format and source mapping
A valid report can still be ignored if the analyzer cannot parse it, cannot find it at the configured path, or cannot associate its files with the source being analyzed.
- Format: Formats such as JaCoCo XML, LCOV, Cobertura, OpenCover and native profiles are not interchangeable by default. Confirm the documented format for the specific language and data type; convert only if necessary, then verify analysis reads the converted file.
- Path root: Compare the report’s location with the CI working directory, project base directory, module root and analyzer configuration. A locally valid relative path may resolve differently in CI. Absolute paths can point to a developer machine or temporary container location.
- Wildcards: Do not assume a report-path property supports patterns such as
**; check that analyzer setting’s documentation. - Source files: Look for stale reports from another checkout, container-specific path prefixes, source links instead of filesystem paths, or case mismatches on case-sensitive systems.
- Filters: Review test and source inclusions, coverage include/omit rules, analyzer exclusions, generated-code exclusions and module boundaries.
Resolve CI job, branch and pull-request gaps
Analysis must start only after report generation finishes. In a single job, put report generation before analysis. Across separate jobs, explicitly persist the report and download it before analysis; GitHub Actions describes workflow artifacts as a way to preserve files after a job and share them with another job in its workflow artifacts documentation.
Artifact upload is transport, not proof of analyzer import or correct attribution. Verify the file is present in the analysis workspace and belongs to the same repository, checkout, branch and source revision. GitHub’s own Code Quality feature, for example, documents a Cobertura XML file, an explicit upload step, code-quality: write permission, runs on the default branch and pull requests for branch comparison, and checking out the pull-request head SHA for diff mapping. These are requirements for that GitHub feature, not general requirements for every code quality tool; see GitHub’s code coverage setup.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallFor external pull requests, CI platforms may withhold secrets or write permissions from forked contributions. An intentionally skipped upload can therefore explain missing pull-request data. Follow the platform’s documented security model; do not expose credentials just to force an upload. Also verify whether the product supports the branch or pull-request analysis context in question.
Quick Recap
Diagnose zero, partial or stale results
- Coverage is zero: The report may be empty, instrumentation may not have run, or filters may have excluded all relevant files. Check report contents and collection settings.
- Only some packages or modules appear: Confirm the analyzer scans those modules and that reports from each are imported, or generate an aggregate report if the tool supports it.
- Parallel shards produce incomplete data: Give shards distinct report outputs, then merge or aggregate deliberately using a supported method. Blindly combining incompatible reports can double-count or mis-map coverage.
- Results look stale: Check for a cached or old artifact, a report from another commit or branch, a failed upload, or analysis of a different module. Ensure the report corresponds to the source revision under analysis.
- Local works, CI fails: Compare working directories, checkout roots, path case, container paths and whether a cross-job report transfer is missing.
Verify the repair with a clean run
- Record the exact CI test and report-generation commands, working directory, report path and format.
- Confirm the report exists and is nonempty at the moment analysis starts, and that its source paths correspond to the checked-out files.
- Review analyzer logs for report discovery, parsing errors and file-matching warnings.
- Run the pipeline from a clean workspace so a cached or old report cannot masquerade as current data.
- After analysis completes, verify the dashboard reflects the intended branch and commit.
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.

