NATIVE COVERAGE IN VS CODE UND VISUAL STUDIO

Coverage, die in Ihrem Editor lebt

Lesen Sie lcov, llvm-cov JSON, Cobertura, JaCoCo, Istanbul, SimpleCov, Clover, OpenCover, coverage.py, gcov, Go, Coveralls, SonarQube, GNATcoverage, Bullseye, Visual Studio, Xcode, VectorCAST, Testwell CTC++, TRACE32, EMMA, UCIS/UCDB, NCover und dotCover ein, normalisieren Sie sie in ein kanonisches Modell, führen Sie Läufe deterministisch zusammen und lesen Sie das Ergebnis direkt in der Editor-Randleiste — in VS Code und in Visual Studio 2022 und 2026 in jeder Edition. Kein separater Viewer, für den Sie den Editor verlassen müssten.

VSIX herunterladen Benutzerhandbuch lesen Funktionen entdecken

Kostenlos starten. Fucini Coverage Studio läuft während einer 14-tägigen Testphase kostenlos, mit allem freigeschaltet. Danach sperrt die Erweiterung Sie nicht aus, sondern geht in die kostenlose Community-Stufe über — alle Funktionen außer MC/DC, bei einigen wenigen mit großzügigen Monatslimits. Upgraden Sie jederzeit auf den uneingeschränkten Umfang, oder schalten Sie alles kostenlos frei, indem Sie detaillierte Nutzungstelemetrie teilen. Tarife ansehen →

Als Nächstes: all diese Coverage in Azure DevOps, als kostenlose Erweiterung. Azure DevOps zeigt Coverage an einem Build nur so weit, wie sein eigenes Format reicht — Zeilen, und Zweige als Prozentsatz. Fucini DevOps Studio wird alles zeigen, was Coverage Studio liest: jedes dieser 25 Formate, für jede Sprache, mit MC/DC, Bedingungen, dem zusammengesetzten Score und den Gates, als Coverage-Reiter an der Pipeline, die es erzeugt hat. Folgen Sie den Neuigkeiten für die erste Veröffentlichung.

Covered/uncovered gutters with the Test Coverage panel openScreenshot pending — add assets/img/hero.png (see SCREENSHOTS.md).

Wenn eine KI die Tests geschrieben hat

Eine generierte Testsuite wirkt gründlich. Coverage zeigt, ob sie es ist.

Ein Sprachmodell schreibt Ihnen in Sekunden eine Testsuite, und sie liest sich überzeugend. Was es Ihnen nicht sagen kann: ob diese Tests irgendetwas Relevantes erreichen — und die Zeilenabdeckung kann es auch nicht, denn ein Test ganz ohne Zusicherungen lässt jede berührte Zeile trotzdem aufleuchten.

◆ Entscheidungen, nicht nur Zeilen

MC/DC und Branch-Coverage zeigen, ob jede Entscheidung wirklich durchlaufen wurde, nicht nur ob die Zeile erreicht wurde. Generierte Tests gehen typischerweise den glücklichen Pfad und lassen die andere Seite jedes if unberührt — was sich als 100% Zeilen- und 50% Branch-Abdeckung liest. Diese Lücke ist der Befund.

◆ Funktionen, die nie aufgerufen wurden

Die Dead-Code-Erkennung listet die Funktionen auf, die kein Test erreicht hat. Eine generierte Suite nennt sie in ihren Testtiteln und kommt nie bei ihnen an — in einem grünen Testlauf ist das unsichtbar.

◆ An die Änderung vor Ihnen gebunden

Diff-Coverage misst nur, was sich gegenüber einer Git-Basis geändert hat. Aus „die Tests laufen durch" wird so „der Code, den Sie gerade übernommen haben, ist getestet" — unabhängig davon, ob ein Mensch oder ein Assistent ihn geschrieben hat.

Nichts davon beweist, dass ein Test gut ist — das kann nichts. Es sagt Ihnen genau und zeilenweise, was nie ausgeführt wurde: der Teil, den ein Prüfer nicht im Kopf behalten kann und den ein Assistent nicht von sich aus nennt. Funktioniert mit TypeScript und JavaScript über Vitest, Jest oder nyc und mit C, C++, Java und Ruby über die Tracefiles, die diese Toolchains ohnehin erzeugen.

Was uns unterscheidet

Ein Modell, jedes Format, kein eigener Viewer

◆ Fünfundzwanzig Formate rein

LCOV, llvm-cov JSON, Cobertura, JaCoCo, Istanbul/nyc, SimpleCov, Clover, OpenCover, coverage.py, gcov JSON und Klartext, Go, Coveralls, SonarQube, GNATcoverage, Bullseye, Visual Studio, Xcode, VectorCAST, Testwell CTC++, TRACE32, EMMA, UCIS/UCDB, NCover und dotCover — automatisch erkannt und deterministisch mit erfasster Herkunft zusammengeführt.

◆ Native UI raus

Zeilen-, Branch- und Funktions-Gutter, das Übersichtslineal, Explorer-Badges und die Ansicht Covered Files.

◆ MC/DC & Regionen

Modified Condition/Decision Coverage, Regions- und C++-Instanziierungsabdeckung aus llvm-cov, mit Aufschlüsselung pro Entscheidung beim Hover.

◆ Sicherheitsgewichteter Score

Ein einzelnes gewichtetes harmonisches Mittel über alle Metriken, mit Gewichten, die an IEC-61508-/ISO-26262-/DO-178C-Stufen ausgerichtet sind.

◆ Compliance-Gating

COMPLIANT-/NON-COMPLIANT-Urteile mit Schwellenwerten pro Metrik und den Modi strict, whm, both oder either.

◆ Diff-Coverage

Beschränken Sie Dekorationen auf Zeilen, die sich gegenüber einer Git-Basisreferenz geändert haben — ideal, um genau zu prüfen, was ein PR abgedeckt hat oder nicht.

In 30 Sekunden startklar

  1. Installieren Sie die Erweiterung und öffnen Sie Ihr Projekt.
  2. Tests ausführen — Befehlspalette → Fucini Coverage: Run Tests with Coverage. Der Befehl erkennt vitest, jest, pytest, go, cargo, dotnet, maven, gradle, phpunit und ctest, führt Ihre Tests mit Abdeckung aus und lädt, was sie schreiben. Sie haben schon eine Tracedatei? Fucini Coverage: Pick Coverage File lädt sie und merkt sie sich.
  3. Eine Quelldatei öffnen — der Rand zeigt, welche Zeilen ausgeführt wurden, die Statusleiste den Prozentsatz der Datei, ein Hover die Trefferzahl jeder Zeile, und der Lauf erscheint in der Coverage-Ansicht und im eigenen Test-Coverage-Bereich von VS Code. Ab dann lädt sie von selbst neu, sobald sich die Tracedatei ändert.

Erfordert VS Code ≥ 1.88 oder Visual Studio 2022 oder 2026 — Community, Professional oder Enterprise — sowie eine Coverage-Tracedatei, die Ihr Projekt bereits erzeugt. In Visual Studio 2022 gibt es die eingebaute Coverage nur in Enterprise; Coverage Studio für Visual Studio zeigt sie auch auf Community und Professional, aus der Datei, die Ihr Build bereits schreibt.

Im Vergleich

VS Code selbst und mehrere kostenlose Erweiterungen zeigen ebenfalls Abdeckung an. Das hier ist, was die eigene Dokumentation jeder davon zu ihrem Funktionsumfang sagt, Stand September 2026 — wo ein README etwas nicht erwähnt, sagt die Tabelle genau das, statt zu raten.

Fucini Coverage StudioVS Code, integriertCoverage GuttersCode Coverage (markis)Gcov Viewer
Woher die Abdeckung kommt25 Tracedatei-Formate, dazu Mutationsberichte von PIT und Strykereine Test-Erweiterung, die Abdeckung meldetlcov- und XML-Dateienlcov-Dateien.gcda-Dateien von GCC, über gcov
Nicht abgedeckte Zeilen im Editor✓✓✓✓, auch in Problems✓
Zweigabdeckung, pro Zweig✓wenn die Test-Erweiterung sie meldetnicht beschriebennicht beschriebennicht beschrieben
MC/DC✓ (Pro)—nicht beschriebennicht beschriebennicht beschrieben
Mehrere Tracedateien zusammengeführt, und welche jede Zeile abgedeckt hat✓—mehrere Dateien unterstütztnicht beschriebennicht beschrieben
Lädt neu, wenn sich die Tracedatei ändert✓zeigt den letzten Testlauf✓nicht beschriebennicht beschrieben
Diff-Abdeckung, Schwellenwerte und Verlauf✓Abdeckung im Diff-Editor angezeigtnicht beschriebennicht beschriebennicht beschrieben
HTML-Berichtgeneriert, selbst gehostet—zeigt einen vorhandenen annicht beschriebennicht beschrieben
Coverage für KI-Agenten: Sprachmodell-Tools und ein MCP-Server✓nicht beschriebennicht beschriebennicht beschriebennicht beschrieben
Die Tests, die eine Zeile ausgeführt haben, und die Tests, die Ihre Änderungen betreffen✓Coverage pro Test, wenn die Test-Erweiterung sie meldetnicht beschriebennicht beschriebennicht beschrieben
Ergebnisse von Mutationstests im Editor✓ (PIT, Stryker)nicht beschriebennicht beschriebennicht beschriebennicht beschrieben
Ein Gate für neuen Code✓nicht beschriebennicht beschriebennicht beschriebennicht beschrieben
Dieselben Zahlen in Visual Studio und auf der Kommandozeile✓—nicht beschriebennicht beschriebennicht beschrieben

Es ist kein Entweder-oder mit der eigenen Ansicht von VS Code: Jeder Ladevorgang wird auch im integrierten Test Coverage-Bereich veröffentlicht, Filter nach Test inklusive. Ist hier etwas veraltet? Sagen Sie es uns über die Kontaktseite.

Unterstützte Formate

FormatTypische Datei
LCOVlcov.info, *.info
llvm-cov JSONllvm-cov export --format=json
Cobertura XMLcoverage.xml
JaCoCo XMLjacoco.xml
Istanbul / nyccoverage-final.json
SimpleCov (Ruby).resultset.json, coverage.json
Clover XMLclover.xml
OpenCover XMLcoverage.opencover.xml
coverage.py JSONcoverage.json (coverage json)
gcov / gcovr JSONgcov --json-format --stdout, gcovr --json
Go coverage profilecoverage.out
SonarQube generic<coverage version="1"> XML
GNATcoverage XML (Ada)gnatcov coverage --annotate=xml
BullseyeCoverage XMLcovxml output
Visual Studio.coveragexml (dotnet-coverage convert)
Coveralls JSONcoveralls.json
Xcode xccov JSONxcrun xccov view --report --json
Alle Funktionen ansehen Vollständiges Benutzerhandbuch