covpeek
Sprachübergreifender Coverage-Report CLI-Parser, geschrieben in Go.
Parsen Sie Coverage-Reports von Rust, Go, TypeScript, JavaScript und Python mit einem einheitlichen Tool.
covpeek unterstützt derzeit Rust (LCOV), Go, TypeScript/JavaScript (LCOV), Python (Cobertura XML) und Python (JSON) Coverage-Formate.
Funktionen
Mehrsprachige Unterstützung
Parsen Sie Coverage-Dateien von Rust (LCOV-Format generiert von grcov oder tarpaulin), Go (natives Coverage-Format), TypeScript/JavaScript (LCOV-Format generiert von nyc/Istanbul) und Python (Cobertura XML und JSON-Formate).
Automatische Erkennung
Erkennt automatisch das Coverage-Dateiformat anhand der Erweiterung oder des Inhalts. Keine manuelle Formatangabe erforderlich.
Mehrere Ausgabeformate
Zeigen Sie Coverage-Daten als Tabelle (Standard, sortiert nach Coverage), JSON für programmatische Verwendung oder CSV für den Tabellenimport an.
Interaktive TUI
Erkunden Sie Coverage-Daten mit einer schönen Terminal-Benutzeroberfläche. Navigieren Sie durch Dateien und zeigen Sie detaillierte Coverage-Informationen interaktiv an.
Plattform-Integration
Laden Sie Coverage-Reports direkt zu SonarQube und Codecov Plattformen hoch. Perfekt für CI/CD-Pipelines.
CI/CD-Ready
Prüfen Sie Coverage-Schwellenwerte für kontinuierliche Integration, generieren Sie SVG-Badges für Ihre README und vergleichen Sie Coverage zwischen Git-Commits.
Verwendungsbeispiele
# Coverage-Datei parsen
covpeek --file coverage.lcov
# Coverage-Badge generieren
covpeek badge --file coverage.lcov --output coverage-badge.svg
# Zu SonarQube hochladen
covpeek upload --to sonarqube --project-key myproject --file coverage/lcov.info --token $SONAR_TOKEN
# Zu Codecov hochladen
covpeek upload --to codecov --repo-token $CODECOV_TOKEN
# Coverage-Schwellenwert in CI prüfen
covpeek ci --min 80
# Coverage zwischen Commits vergleichen
covpeek diff --file coverage/lcov.info --commit-a HEAD~5 --commit-b HEAD
# Interaktive TUI starten
covpeek --file coverage.lcov --tui
Die CLI ist einfach und intuitiv zu bedienen.
Parsen Sie jede Coverage-Datei mit dem Flag --file und geben Sie optional ein Ausgabeformat an.
Verwenden Sie --tui, um die interaktive Terminal-Oberfläche zum Erkunden von Coverage-Daten zu starten.
Generieren Sie Badges mit dem Befehl badge zum Einbetten in README-Dateien oder Dashboards.
Laden Sie Reports auf Plattformen wie SonarQube oder Codecov mit dem Befehl upload hoch.
Verwenden Sie den Befehl ci, um Coverage-Schwellenwerte in Ihrer CI/CD-Pipeline zu prüfen.
Vergleichen Sie Coverage zwischen Commits mit dem Befehl diff, um Verbesserungen oder Verschlechterungen zu verfolgen.
Installation
Unterstützte Coverage-Formate
LCOV-Format
Verwendet von Rust (grcov, tarpaulin) und TypeScript/JavaScript (nyc/Istanbul).
Dateierweiterungen: .lcov, .info, lcov.info
Unterstützt TN, SF, FN, FNDA, DA, LH, LF, end_of_record Records. Branch-Coverage (BRF, BRH, BRDA) wird ebenfalls unterstützt.
Go Coverage-Format
Natives Go-Coverage-Format, generiert von go test -coverprofile.
Dateierweiterung: .out
Format: mode: set|count|atomic gefolgt von Coverage-Einträgen.
Python Coverage-Formate
Cobertura XML- und JSON-Formate, generiert vom coverage Paket.
XML: coverage.xml | JSON: coverage.json
Fragen?
Bitte teilen Sie Feedback wie Feature-Anfragen oder Fehlerberichte auf GitHub Issues.
Beiträge sind willkommen! Schauen Sie sich das Repository an, um loszulegen.