Hoppa till innehåll

Code Quality

codecov.io

Codecov är en molnbaserad tjänst för kodtäckning (code coverage) som visar hur stor andel av koden som faktiskt körs av testsviten. Tjänsten kopplas in i CI-pipelinen och genererar rapporter per commit och pull request, vilket gör det enkelt att se om en ändring sänker testtäckningen innan den mergas. Det är en SaaS-tjänst, det vill säga hostad av leverantören snarare än något man driftar själv.

Besök codecov.io

Vad är codecov.io?

Codecov är en SaaS-tjänst för kodtäckning (code coverage) som samlar in täckningsdata från testkörningar i CI-pipelinen och visualiserar hur stor andel av kodbasen som faktiskt testas. Tjänsten kopplas till en CI-leverantör som genererar täckningsrapporter, vilka Codecov sedan bearbetar för att visa trender över tid, täckning per fil och rad, samt - centralt för arbetsflödet - diff-täckning direkt i pull requests, så att granskare ser om ny kod saknar tester innan merge. Enligt källan är tjänsten gratis för öppen källkod-projekt samt för ett gratis privat repository, vilket gör den tillgänglig för enskilda utvecklare och små projekt utan kostnad. Codecov används som ett komplement till kodgranskning och statisk analys, med fokus specifikt på testtäckning snarare än kodstil eller buggmönster.

Vad den fria nivån räcker till

Gratis för öppen källkod (publika repon) samt ett fritt privat repo - fler privata repon kräver betald plan.

Användningsfall

Täckningstrender över tid

Visualisering av testtäckning över tid för att identifiera kodbaser eller moduler med eftersatt testning.

Diff-täckning i pull requests

Diff-täckningskontroll i pull requests, så att granskare ser exakt vilka nya rader som saknar testtäckning.

Täckningsbadge för OSS-projekt

Täckningsbadge på README för öppen källkod-projekt, som ett synligt kvalitetssignal till bidragsgivare.

Täckningsgrindar i CI

Kvalitetsgrindar som kräver en viss täckningsnivå innan merge tillåts i CI-pipelinen.

Styrkor och begränsningar

Styrkor

  • Gratis för öppen källkod-projekt, vilket är standard i kategorin men värdefullt för OSS-underhållare.
  • Inkluderar ett gratis privat repository enligt källan, så att enskilda utvecklare kan testa tjänsten på ett privat projekt utan kostnad.
  • Diff-täckning i pull requests ger direkt, handlingsbar feedback kopplad till just den ändring som granskas, snarare än bara ett aggregerat totaltal.

Begränsningar

  • Gratisnivån för privata repositories är begränsad till ett enda repo enligt källan - otillräckligt för team med flera privata projekt.
  • Codecov mäter enbart täckning (hur mycket kod som körs av tester), inte om testerna faktiskt verifierar rätt beteende - hög täckning är inte samma sak som bra tester.
  • Kräver att kodbasen redan genererar täckningsrapporter i CI - verktyget analyserar inte kod direkt utan är beroende av testramverkets output.
  • Källan anger inga detaljer om prissättning för team med fler privata repositories.

Jämfört med alternativen

Coveralls.io är den mest direkta motsvarigheten i samma kategori - också ett fristående täckningsverktyg, gratis för öppen källkod, med samma grundfunktion av att visualisera testtäckning. Codecov har historiskt särskiljt sig genom sitt fokus på diff-täckning i pull requests, medan verktyg som SonarCloud och DeepSource täcker bredare kodkvalitet (stil, buggmönster, säkerhet) men med täckningsrapportering som en mindre del av en större svit snarare än huvudfokus.

Vanliga frågor

Är Codecov gratis för alltid för öppen källkod?

Enligt källan är tjänsten gratis för öppen källkod-projekt utan angiven tidsbegränsning, men verifiera aktuella villkor direkt hos leverantören eftersom sådana policyer kan ändras.

Hur många privata repositories ingår i gratisnivån?

Enligt källan ingår ett (1) gratis privat repository - fler kräver sannolikt en betald plan, vilket källan dock inte specificerar i detalj.

Är Codecov self-hosted eller molnbaserat?

Codecov.io är en molnbaserad SaaS-tjänst enligt källan; den anger inte om en självhostad eller enterprise-variant erbjuds - verifiera direkt hos leverantören.

Ersätter Codecov behovet av kodgranskning eller statisk analys?

Nej, Codecov mäter enbart testtäckning och bör kombineras med verktyg för kodgranskning, till exempel Codacy eller SonarCloud, för en helhetsbild av kodkvalitet.

Behöver mitt projekt redan ha tester för att använda Codecov?

Ja, Codecov bearbetar täckningsrapporter som genereras av ditt testramverk i CI - verktyget kör inte tester själv utan visualiserar resultat från befintlig testkörning.

SIAX perspektiv

Codecov är ett naturligt förstahandsval för team som redan mäter testtäckning (t.ex. via Jest, pytest eller coverage.py) och vill visualisera trender direkt i CI-flödet. Eftersom tjänsten är SaaS bör man tänka igenom var kodmetadata och täckningsrapporter lagras, särskilt om det rör kunddata eller reglerad kod under GDPR - bekräfta datalagringsregion innan produktionskod kopplas in. Gränsen på ett enda gratis privat repo gör att kostnaden dyker upp så fort man har mer än ett internt projekt att bevaka.

Osäker på vad ni behöver?

Vi hjälper er välja rätt verktygsstack

Ett kostnadsfritt första samtal - vi går igenom er stack och vad som faktiskt behövs innan ni betalar för något.

Boka samtal