top 15 code coverage tools
Lijst met de meest populaire codedekkingstools voor Java, JavaScript, C, C ++, C #, PHP, Eclipse, .Net en vele andere programmeertalen:
Bij het testen van software zijn er verschillende manieren om de dekking van testen te meten. Codedekkingsmethode is een van de belangrijkste technieken.
Met behulp van de codedekkingstools kan men de hoeveelheid geteste code identificeren tijdens het uitvoeren van tests. In eenvoudige bewoordingen vertelt codedekking ons hoeveel van de broncode wordt gedekt door een reeks testcases. Het is een belangrijke maatstaf om een standaardkwaliteit van QA-inspanningen te behouden.
Codedekking wordt gemeten in percentage van het aantal uitgevoerde regels van het totale aantal coderegels tijdens het uitvoeren van tests.
Op het moment dat testgevallen worden geschreven, moet men alle criteria in gedachten houden voor maximale codedekking, d.w.z. testgevallen moeten worden geschreven om alle instructies, functies, voorwaarden, paden, beslissingen, loops, parameterwaarde, entry- en exitcriteria te dekken.
We hebben verschillende tools op de markt om de codedekking te meten. Laten we er in dit artikel enkele in detail bekijken.
Neem contact op om uw vermelding hier voor te stellen.
Wat je leert:
Meest populaire tools voor codedekking in 2019
Hieronder vindt u de lijst met de meest populaire codedekkingstools die op de markt verkrijgbaar zijn.
# 1) Parasoft JTest
Parasoft Jtest is een van de producten van de Parasoft-testtoolsuite.
Met Jtest kunt u de ontwikkeling van Java-gebaseerde applicaties versnellen met een minimum aan risico, goede begeleiding en analyse. Het wordt gebruikt voor unit-test en codedekking geïntegreerd met handmatige en automatiseringstests. Het rapport geeft een goed beeld van de gedekte code en minimaliseert daarmee de risico's.
Belangrijkste kenmerken:
- Het wordt gebruikt voor op Java gebaseerde applicaties.
- Het is een multi-tasking-tool die gegevensstroomanalyse, eenheidstests, statische analyse, runtime-foutdetectie, codedekkingstests enz. Omvat.
- Het kan dekking verzamelen uit verschillende kaders en testmethoden.
- Het kan worden uitgevoerd in opdrachtregelmodus, op eclipse gebaseerde GUI of met CI-systemen.
- De hoogwaardige rapportage en analyse omvatten ook traceerbaarheid en testdetails op basis van codewijzigingen.
Licentie type: Eigen commerciële software
Officiële URL: Parasoft JTest
Voors en tegens:
- Het gebruik is erg duur.
- Het is een goed hulpmiddel voor het beste kwaliteitsproduct met een multifunctionele oplossing om tijd en risico's te verminderen.
- De rapporten en analyses zijn zeer gemakkelijk te begrijpen en ze bevatten maximale aspecten van kwaliteit.
Laatste release: Versie 10.3.3 op 7 november 2017.
# 2) Testwell CTC ++
Testwell CTC ++ is een zeer populaire tool van Verifysoft Technology. Het is een betrouwbare codedekking en analyse-tool voor C, C ++, C # en Java.
Dit is de eerste keuze voor de meeste industrieën in elk domein. Het verzekert de volledigheid van de tests. Het wordt geleverd met een kwalificatiekit. Een gratis proefversie, online training en live presentaties zijn ook beschikbaar voor deze tool. Het is beschikbaar in drie pakketten: alleen CTC ++ Host, CTC ++ Host-Target add-on en CTC ++ Bitcov add-on.
beste manier om xml-bestand te openen
Voor C # en Java is een afzonderlijk add-on-pakket vereist.
Belangrijkste kenmerken:
- Het belangrijkste kenmerk is dat het kan worden gebruikt voor toepassingen in verschillende talen en domeinen.
- Het kan ook met alle testtools voor eenheden worden gebruikt.
- Als hulpmiddel voor codedekking biedt het volledige dekking inclusief alle criteria.
- Rapporten kunnen worden verkregen in gewone tekst, HTML-, JSON-, XML- en Excel-vorm.
Licentie type In eerste instantie is de proefversie gratis beschikbaar. Om het of de add-on te kopen, moet u contact met hen opnemen.
Officiële URL: Testwell CTC ++
Voors en tegens:
- Het is erg betrouwbaar en gemakkelijk te gebruiken. Het vermijdt elke ongeteste levering van code.
- Er is een gratis proefversie beschikbaar.
- Het kan worden gebruikt voor applicaties in verschillende talen zoals C, Java, C # etc.
- Het is goed voor alle domeinen, zoals gezondheidszorg, transport, automobiel enz., Met een hoge codedekking.
- Het ondersteunt alle compilers en cross-compilers.
- De kosten worden niet bekendgemaakt, daarom moet u contact opnemen met het bedrijf voor prijsinformatie.
Laatste release: Versie 8.2.2
# 3) dekking
Cobertura is een open source codedekkingstool voor Java. Dit is een op Jcoverage gebaseerde tool. Om deze tool te gebruiken moet je de Maven plug-in declareren in het POM.XML-bestand.
Belangrijkste kenmerken:
- Het ondersteunt Java 7, Java 8, Java 9 en Java 10.
- Cobertura kan worden uitgevoerd vanaf de opdrachtregel of ant.
- Na compilatie berekent het de java-bytecode.
- Het omvat alle criteria van codedekking inclusief branches, klasse, pakket enz.
- De rapporten worden geproduceerd in HTML of XML.
- Deze rapporten hebben de kenmerken van filteren, oplopend en aflopend.
Licentie type: GNU General Public License (GPL)
Officiële URL: Dekking
Voors en tegens:
- Het is een open source code-dekkingstool.
- De rapporten zijn gemakkelijk te begrijpen met opties om naar behoefte te filteren.
- Het is goed ontworpen voor zowel ontwikkelaars als testers.
- Het werkt alleen voor Java.
Laatste release: Versie 2.1.1
# 4) JaCoCo
JaCoCo is een gratis toolkit voor codedekking ontwikkeld door EclEmma. Het is ontwikkeld ter vervanging van de Emma-codedekkingstool. Het kan alleen worden gebruikt voor het meten en rapporteren van op Java gebaseerde applicaties.
Belangrijkste kenmerken:
- Deze tool voor codedekking kan alleen voor Java worden gebruikt. Het ondersteunt Java 7, Java 8, Java 9 en Java 10.
- Het is compatibel met alle soorten vrijgegeven Java-bestandsversies.
- Het behandelt lijnen, instructies, methoden, type, vertakkingen en cyclomatische complexiteit in codedekking.
- Het kan Java-code op twee verschillende manieren instrumenteren, d.w.z. tijdens het uitvoeren van de code met de Java-agent of voordat de code wordt uitgevoerd die offline is.
- Het slaat de resulterende gegevens op in een bestand of verzendt deze via TCP. De rapportindelingen zijn onder meer CVS, XML en HTML.
- Het ondersteunt regressietests samen met functionele tests, waarbij testgevallen op Junit zijn gebaseerd.
Officiële URL: JaCoCo
Voors en tegens:
- Dit is een open source codedekkingstool.
- Het is alleen bestemd voor Java-codedekking.
- Het geeft goede prestaties voor grootschalige Java-projecten met een minimale runtime.
- Het vereist minder implementatie met minimale afhankelijkheden van externe bibliotheken en bronnen.
- Er zijn veel tools die JaCoCo ondersteunen, zoals Jenkins, Netbeans, Gradle, TeamCity, VS TEAM SERVICES, enz.
- Het is eenvoudig om JaCoCo in Maven, Junit etc. te configureren om een codedekkingsrapport te krijgen.
- Het door JaCoCo gegenereerde rapport is kleurrijk en gemakkelijk te begrijpen.
Laatste release: Versie 0.8.1 op 21 maart 2018.
# 5) CodeCover
CodeCover-tool is een uitbreidbare open source testtool voor glazen dozen die kan worden gebruikt als codedekking voor Java-software. Het werd in 2007 ontwikkeld aan de Universiteit van Stuttgart. Het kan worden uitgevoerd op de opdrachtregel, Eclipse en Ant.
Belangrijkste kenmerken:
- Het is een testtool voor glazen dozen voor Java-toepassingen.
- Het omvat verklaringen, lussen, takken, enz., Samen met dekking voor termijnen, dekking voor vraagtekens en gesynchroniseerde dekking.
- De rapporten worden gegenereerd in het sjabloon-engine-snelheidsformaat.
Licentie type: EPL - Eclipse Public License.
vraag en antwoord voor het testen van software voor verser
Officiële URL: CodeCover
Voors en tegens:
- Het is een gratis tool die kan worden gebruikt voor codedekking.
- Het wordt gebruikt om de kwaliteit van testen te verbeteren en om nieuwe testcases te creëren.
- Het is beperkt voor gebruik in Java en COBOL.
- Het heeft ook beperkingen om slechts een enkele brondirectory te instrumenteren.
Laatste release: Versie 1.0.1.2 in 2011
# 6) BullseyeCoverage
Bullseye is een codedekkingstool voor C ++ en C-programma's. De prijs is $ 800 voor het eerste jaar en $ 200 per jaar voor verlenging.
Belangrijkste kenmerken:
- Deze codedekkinganalysator kan worden gebruikt voor C ++ en C.
- Het heeft de functie om het resultaat te exporteren naar HTML-, XML- en GUI-indeling.
- Het wordt geleverd met extra functies zoals samenvoegen, code uitsluiten, visualiseren enz.
- De grootste teleurstelling is dat het samenvoegen van resultaten alleen op functioneel niveau kan. Het is niet toegestaan in het statement- of conditieniveau.
Licentie type: Zwevende licentie
Officiële URL: In de roos
Voors en tegens:
- Het gebruik ervan is beperkt tot C ++ en C.
- De gereedschapskosten zijn hoog. Vooral als je de extra functies zoals Visualizer, Merge, code exclusief etc. niet nodig hebt.
- De tool is gebruiksvriendelijk en het gebruik ervan is eenvoudig.
- De rapporten zijn heel eenvoudig en gemakkelijk te begrijpen.
- De snelheid van uitvoering is erg hoog.
- De samenvoegfunctie is niet zo goed.
Laatste release: Versie 8.14 in maart 2018
# 7) EMMA
Emma is een zeer populaire open source-tool voor Java-software om codedekking te meten. Het is ontwikkeld door Vlad Roubtsov. Het omvat alle soorten dekking zoals klasse, lijn, methode enz.
Belangrijkste kenmerken:
- Het is 100% voor Java-software.
- Het bijzondere is dat het grootschalige bedrijfsontwikkeling ondersteunt.
- Deze tool heeft een groot aandeel in de markt in vergelijking met de andere gratis dekkingstools.
- De rapporten zijn beschikbaar in XML, HTML en platte tekst.
Licentie type: CPL - Common Public License v1.0.
Officiële URL: EMMA
Voors en tegens:
- Dit is een gratis tool met een zeer goede snelheid.
- Het is vrij eenvoudig te gebruiken en omvat alle criteria van codedekking.
- Beperkt voor gebruik in Java-software.
- Het ondersteunt ANT.
- Het ondersteunt klasse-instrumentatie en kan offline of on-a-fly worden uitgevoerd.
- Het grootste nadeel is dat het de nieuwste versie van Java niet ondersteunt en niet goed wordt onderhouden.
Laatste release: Emma-2.0.5320
# 8) OpenCover
OpenCover is een open source-tool voor codedekking van .Net-software. Het werkt goed voor .Net 2 en hoger. Het is ontwikkeld om de problemen op te lossen waarmee u te maken kreeg tijdens het gebruik van de tool PartCover voor codedekking van .Net-software.
Belangrijkste kenmerken:
- Het is voor alle .Net 2 en hoger software.
- Het kan worden geïnstalleerd door het NuGet-pakket, MSI- of ZIP-bestand.
- Het biedt 64- en 32-bits ondersteuning voor .Net 4 en .Net 2.
- Het biedt een eenvoudig codedekkingsproces.
- Het biedt ook een betere afhandeling van Generics dan PartCover.
- Het is een opdrachtregelprogramma.
- Het geeft rapporten als een XML-uitvoerbestand, dat wordt gebruikt om grafische rapporten te produceren. Dit wordt gedaan met ondersteuning van de Report generator tool.
Licentie type: MIT-licentie
Officiële URL: OpenCover
Voors en tegens:
- Het is een gratis tool voor het testen van codedekking.
- Het is op verschillende manieren beter dan PartCover.
- Het biedt zeer nuttige documentatie tijdens het installeren van OpenCover.
Laatste release: OpenCover 4.6.519 op 8 februari 2016
# 9) NCover
NCover is de beste tool voor codedekking die is ontwikkeld door Peter Waldschmidt voor het .Net-platform. Het is geen volledig open source tool. Alleen de bètaversie is gratis beschikbaar. Het kost $ 480 voor een complete NCover 3.
Belangrijkste kenmerken:
- NCover-tool is alleen voor .Net-platform.
- Dit dekt de dekking van het overzicht en het bijkantoor.
- Deze tool analyseert de code door deze achter die privé te plaatsen.
- NCoverExplorer-tool is beschikbaar om door de broncode te bladeren met dekkingsanalyse.
- Rapporten worden gepresenteerd in metrieken van HTML-formaat.
Licentie type: Zwevende licentie
Officiële URL: NCover
Voors en tegens:
- Het is de beste tool voor codedekking voor .Net-software.
- Alleen de bètaversie is gratis. Anders kost het hoog om deze tool te gebruiken.
- Het heeft 4 jaar volwassenheid en is een zeer snelle tool.
- De ondersteuning is erg actief en blijft de releases updaten met enkele nieuwe fixes en functies.
- Met deze tool is het heel eenvoudig om codedekkingsgegevens te creëren.
- Het is goed voor zowel handmatige als geautomatiseerde codedekkingstests.
Laatste release: NCOVER V5.5.3706.979 in september 2017
# 10) Squish COCO
COCO is zowel een cross-platform als een cross-compiler meertalige codedekkingstool van froglogic.
De talen die door COCO worden ondersteund, zijn onder meer C ++, C, C #, System C, Tcl en QML. De rapporten zijn beschikbaar in verschillende formaten, zoals HTML, XML, Tekst, JUnit en Cobertura. De gereedschapskosten worden niet bekendgemaakt door FROGLOGIC. De aangeschafte licentie is echter 1 jaar geldig.
Voor meer details dient u contact op te nemen met de ondersteuning. De proefversie, demo, trainingen en online ondersteuning zijn beschikbaar, maar met beperkingen op basis van de aangeschafte licentie.
Belangrijkste kenmerken:
- Het is een cross-platform en een cross-compiler codedekkingstool.
- Het instrumenteert de broncode.
- Het kan worden geïntegreerd met verschillende builds, tests en CI-frameworks.
- De functie van het samenvoegen van rapporten is beschikbaar voor een betere analyse.
Licentie type: Frog logic License - Floating License.
Officiële URL: Knijp COCO
Voors en tegens:
- Het ondersteunt meerdere soorten projecten in een taal zoals C ++, C, C #, System C, Tcl en QML.
- De proefversie is met beperkingen op de markt verkrijgbaar.
- Elke licentie omvat één jaar ondersteuning en updates.
- Het maakt het proces gemakkelijk.
- Het behandelt criteria zoals verklaring, takken en voorwaarden.
- De gebruiker kan een ander rapportformaat kiezen.
- Vindt overtollige tests en onbereikbare of dode code.
Laatste release: Versie 4.0 in 2017
# 11) Dekkingsmeter
CoverageMeter-tool is de meest gebruikte toolketen voor codedekking voor C / C ++ -toepassingen. De nieuwste versie is versie 1.4. Het helpt bij het vinden van de niet-geteste broncode. Het bevat twee sub-tools, namelijk CoverageBrowser en CoverageScanner.
CoverageScanner werkt als een opdrachtregelprogramma en vervangt de compiler. Het is aangepast aan de meeste compilers die op de markt worden gebruikt. CoverageBrowser werkt als een grafische interface die wordt gebruikt om eindrapporten te analyseren en te beheren. Na de uitvoering kan het eindrapport worden geanalyseerd en beheerd in de CoverageBrowser.
hoe jnlp file windows 10 te openen
Belangrijkste kenmerken:
- De tool werkt voornamelijk in twee delen, namelijk CoverageScanner en CoverageBorwser.
- Het wordt ook geleverd met twee kleine gratis tools: Execution agent en optionele Visual Studio 2005 en 2008.
- Het kan alleen worden gebruikt voor op C en C ++ gebaseerde toepassingen.
- De kosten bedragen ongeveer $ 115,00. De proefversie is echter ook op de markt verkrijgbaar.
Licentie type: Shareware
Officiële URL: Dekking Meter
Voors en tegens:
- De gratis proefversie is beschikbaar op de markt.
- Het is alleen beperkt voor C- en C ++ -programma's.
- Het omvat alle criteria van codedekking zoals functioneel, statement, conditie, pad etc.
Laatste release: Versie 1.4.6
# 12) GCT
GCT, Generic Coverage Tool, is een gratis tool voor codedekking voor C van Brain Marick. Het meet branches, loops en relationele operatordekking. De tool krijgt C-broncode en voert vervolgens instrumentatie uit en produceert het object met behulp van de systeem-C-compiler. Op een andere manier, zoals een echte compiler, roept het de C-compiler aan na het instrumenteren.
Belangrijkste kenmerken:
- Het is goed voor C-programma's.
- In de nieuwste versie gedraagt het zich als een goede compiler.
- Het omvat vertakkingen, meerdere voorwaarden, randvoorwaarden en lussen.
Licentie type: GNU - General Public License.
Officiële URL: GCT
Voors en tegens:
- Het is een open source en is gemakkelijk te gebruiken met het krachtige rapportagesysteem.
- De tool werkt alleen op UNIX.
- De tool is groot en heeft veel onderdelen in installatie. Dit vereist ongeveer 33.000 1k-blokken.
- Het heeft flexibele rapportagetools.
Laatste release: GCT 1.4
# 13) TCAT C / C ++
TCAT is een tool voor codedekking om C, C ++ en JAVA te analyseren. De 2.1-versie werkt goed voor NT 4.x en Windows 95. De kit van TCAT bestaat uit de geïnstrumenteerde engine, runtime-unit en grafisch georiënteerde analysator. Om de werkelijke kosten en beperkingen te achterhalen, moet u contact met hen opnemen of een e-mail sturen.
Belangrijkste kenmerken:
- Het analyseert branches, functies en call-pair code-dekking.
- Het werkt voor C, C ++ en Java.
- Aanwijzen en klikken-methode voor dekkingsrapportage maakt de tool gebruiksvriendelijker.
- Beschikbaarheid van volledige gebruikersdocumentatie en krachtige visualisatiesoftware om gebruikers te helpen.
- Het heeft een demoversie waarvoor geen licentiesleutel nodig is, terwijl de volledige versie een licentiesleutel vereist.
Licentie type: Standaard zwevende licentiebeheerder (flexlm)
Officiële URL: TCAT C / C ++
Voors en tegens:
- Beperkt tot C, C ++ en JAVA.
- Verwerkt eenvoudig grote en complexe projecten zonder capaciteitsproblemen.
- Goed programma-begrip van oproepboom en digraphs.
- Het is zeer betrouwbaar, met minimale berekeningen en volledig compleet voor gebruik door zowel ontwikkelaars als testers.
- De demo-versie is alleen beschikbaar voor een periode van 10 dagen en ook dat met enkele beperkingen.
- De kosten van de licentie worden niet bekendgemaakt.
Laatste release: TCAT C / C ++, Ver.3.2.
# 14) Grietje
Gretel is een gratis codedekkingstool voor Java-programma door Carls Howells aan de Universiteit van Oregon. Om Gretel JVM 1.3 of hoger te installeren, is BCEL (Byte Code Engineering Library) vereist.
Belangrijkste kenmerken:
- Het ondersteunt de dekking van verklaringen voor het Java-programma.
- Het ondersteunt ook de resterende testdekking door het programma opnieuw te instrumenteren en het instrument te verwijderen uit de reeds uitgevoerde code.
- Het kan worden gestart in een opdrachtregel of GUI.
- Rapporten zijn beschikbaar in GUI.
Licentie type: BSD
Officiële URL: Grietje
Voors en tegens:
- Het is een open source tool.
- Het is niet compatibel met JUnit.
Laatste release: Versie 1.0rc2 in juni 2002.
# 15) JCov
Jcov is een open source Java-codedekkingstool. Het is ontwikkeld en geïmplementeerd met SUN JDK. Het werkt door Java-bytecode op twee manieren te instrumenteren, namelijk statische instrumentatie en dynamische instrumentatie.
Belangrijkste kenmerken:
- De tool is goed voor Java-projecten.
- Het rapporteert Block-, Line-, Branch- en Method-dekking.
- Het kan de verzamelde gegevens opslaan in het bestandssysteem of op een server.
- Het instrumenteert java-bytecode.
- Het kan zowel on-the-fly als offline instrumenteren.
Licentie type: LPG V2
Officiële URL: JCov
Voors en tegens:
- Het is een open source code-dekkingstool.
- Het is alleen beperkt tot Java-projecten.
- Het omvat bijna alle criteria van codedekking.
Laatste release: JCov versie 3 in 2014.
Gevolgtrekking
Door codedekking te gebruiken om een standaardkwaliteit van testleads te behouden, worden aanvullende testcases toegevoegd om ervoor te zorgen dat de code zoveel mogelijk wordt uitgevoerd tijdens het uitvoeren van testsuites. Dit is inderdaad heel nuttig voor effectieve regressietesten.
Tools voor codedekking worden alleen gebruikt om de gedekte code te meten tijdens het uitvoeren van tests.
Het is zeer zeldzaam om 100% codedekking te vinden, en zelfs een 100% codedekking bewijst geen 100% kwaliteitstest. Mogelijk bereikt u 100% codedekking terwijl u nog steeds enkele van de belangrijke testcases mist. Om een beter niveau van effectief testen te bereiken, zou men moeten kiezen voor Mutatietesten in plaats van normale codedekking.
Neem contact op om hier een vermelding voor te stellen.
Aanbevolen literatuur
- Beste softwaretesttools 2021 [QA Test Automation Tools]
- 15 beste JAVA-tools voor ontwikkeling, build, profiler, codedekking en beoordeling
- TOP 40 analysehulpmiddelen voor statische codes (beste analysehulpmiddelen voor broncode)
- Top 10 populairste tools voor codebeoordeling voor ontwikkelaars en testers
- Java-implementatie: creatie en uitvoering van Java JAR-bestand
- Java Virtual Machine: hoe JVM helpt bij het uitvoeren van Java-applicaties
- Toegang tot modificatoren in Java - zelfstudie met voorbeelden
- Zelfstudie over reflectie in Java met voorbeelden