Skip to content

Cum să configurezi coverage pentru diferite limbaje în Codacy — Ghid pas cu pas

DodaTech Updated 2025-01-15 1 min read

In this tutorial, you'll learn about Cum să configurezi coverage pentru diferite limbaje în Codacy. We cover key concepts, practical examples, and best practices to help you understand and apply this topic effectively.

Configurezi coverage pentru diferite limbaje în Codacy pentru a măsura acoperirea codului indiferent de tehnologia folosită. Fiecare limbaj are propriile instrumente și formate de raportare.

Step-by-Step Fix

1. JavaScript / TypeScript

# Folosind Jest
npm test -- --coverage --coverageReporters cobertura
npx codacy-coverage-reporter report -r coverage/cobertura-coverage.xml

# Folosing Istanbul
nyc report --reporter=lcov

2. Python

# Folosind pytest-cov
pytest --cov=src --cov-report=xml
export CODACY_PROJECT_TOKEN=xxx
bash <(curl -Ls https://coverage.codacy.com/get.sh) report -r coverage.xml

3. Java (Maven + JaCoCo)

<plugin>
  <groupId>org.jacoco</groupId>
  <artifactId>jacoco-maven-plugin</artifactId>
  <version>0.8.11</version>
  <executions>
    <execution>
      <goals><goal>prepare-agent</goal></goals>
    </execution>
    <execution>
      <id>report</id>
      <phase>verify</phase>
      <goals><goal>report</goal></goals>
    </execution>
  </executions>
</plugin>
mvn verify
codacy-coverage-reporter -l Java -r target/site/jacoco/jacoco.xml

4. .NET

dotnet test --collect:"XPlat Code Coverage"
reportgenerator -reports:"**/coverage.cobertura.xml" -target:./coverage -reporttypes:Cobertura
codacy-coverage-reporter -l CSharp -r coverage/Cobertura.xml

Common Mistakes

  1. Versiune greșită de tool -- jaCoCo 0.8.7+ suportă toate formatele; versiunile vechi au limitări
  2. Format raport neacceptat -- Codacy preferă Cobertura XML peste LCOV pentru majoritatea limbajelor
  3. Dependențe lipsă -- instalează plugin-urile de coverage înainte de a rula raportarea
  4. Path excludere incorect -- exclude fișierele generate automat din raport
  5. Configurare multiplă -- pentru mono-repo, rulează raportul o singură dată per proiect

Practice Exercise

Configurează coverage pentru un proiect Python + JavaScript (Monorepo) și trimite ambele rapoarte la Codacy într-un singur pipeline.

FAQ

Ce tool de coverage recomandă Codacy pentru Go?

Codacy recomandă go test -coverprofile=coverage.out urmat de conversie cu gocov sau direct upload cu API-ul Codacy. |||Pot trimite coverage din mai multe limbaje în același proiect? Da, Codacy agregă rapoartele multiple. Rulează fiecare upload separat și Codacy le combină automat. ||| Cum setez pragul minim de coverage? În Codacy, mergi la Settings > Coverage și setează pragul dorit. PR-urile sub prag vor fi marcate.

Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro