top 15 code coverage tools
Popis najpopularnijih alata za pokrivanje koda za Javu, JavaScript, C, C ++, C #, PHP, Eclipse, .Net i mnoge druge programske jezike:
U softverskom testiranju postoji nekoliko načina za mjerenje pokrivenosti testiranjem. Metoda pokrivanja koda jedna je od najvažnijih tehnika.
Pomoću alata za pokrivanje koda može se identificirati količina koda testiranog tijekom izvršavanja testova. Jednostavnim riječima, pokrivenost kodom govori nam koliki je dio izvornog koda pokriven skupom test slučajeva. Važna je metrika za održavanje standardne kvalitete napora u osiguranju kvalitete.
Mjeri se pokrivenost kodom u postotku broja izvršenih redaka od ukupnog broja redaka koda tijekom izvođenja testova.
U vrijeme pisanja testnih slučajeva treba imati na umu sve kriterije za maksimalno pokrivanje koda, tj. Testne slučajeve treba napisati tako da pokrivaju sve izjave, funkcije, uvjete, putove, odluke, petlje, vrijednost parametra, kriterije ulaska i izlaska.
Na tržištu imamo nekoliko alata za mjerenje pokrivenosti kodom. Istražimo neke od njih detaljno u ovom članku.
******************
= >> Kontaktirajte nas da predložim vaš popis ovdje.
******************
Što ćete naučiti:
Najpopularniji alati za pokrivanje koda u 2019
Dolje je naveden popis najpopularnijih alata za pokrivanje koda koji su dostupni na tržištu.
# 1) Parasoft JTest
Parasoft Jtest jedan je od proizvoda paketa softverskih alata Parasoft.
Jtest omogućuje ubrzavanje razvoja aplikacija temeljenih na Javi uz minimalan rizik, odgovarajuće smjernice i analizu. Koristi se za jedinično testiranje i pokrivanje koda integrirano s ručnim i automatizacijskim ispitivanjem. Njegovo izvješće pruža dobru sliku pokrivenog koda i time minimalizira rizike.
Ključne značajke:
- Koristi se za programe temeljene na Javi.
- Alat je s više zadataka koji uključuje analizu protoka podataka, jedinstveno testiranje, statičku analizu, otkrivanje pogrešaka u radu, ispitivanje pokrivenosti koda itd.
- Može prikupiti pokrivenost iz različitih okvira i metoda ispitivanja.
- Može se pokrenuti u načinu naredbenog retka, grafičkom sučelju temeljenom na eclipseu ili s CI sustavima.
- Njegovo visokokvalitetno izvještavanje i analiza uključuju i sljedivost i detalje ispitivanja na temelju promjene koda.
Vrsta licence: Vlasnički komercijalni softver
Službeni URL: Parasoft JTest
Za i protiv:
- Vrlo je skupo za upotrebu.
- Dobar je alat za najkvalitetniji proizvod s višenamjenskim rješenjem za smanjenje vremena i rizika.
- Izvještaji i analize vrlo su jednostavni za razumijevanje i ispunjavaju maksimalne aspekte kvalitete.
Najnovije izdanje: Verzija 10.3.3 7. studenog 2017.
# 2) Testwell CTC ++
Testwell CTC ++ vrlo je popularan alat tvrtke Verifysoft Technology. Pouzdan je alat za pokrivanje i analizu koda za C, C ++, C # i Java.
Ovo je primarni izbor za većinu grana u bilo kojoj domeni. Osigurava cjelovitost testova. Dolazi s kvalifikacijskim kompletom. Za ovaj su alat dostupni i besplatna proba, mrežni trening i prezentacije uživo. Dostupan je u tri paketa samo za CTC ++ Host, CTC ++ Host-Target dodatak i CTC ++ Bitcov dodatak.
koja su dobra web mjesta za gledanje animea
Za C # i Javu potreban je zasebni paket dodataka.
Ključne značajke:
- Njegova je glavna značajka da se može koristiti za aplikacije različitih jezika i domena.
- Može se koristiti i sa svim alatima za jedinstveno testiranje.
- Kao alat za pokrivanje koda pruža cjelovitu pokrivenost, uključujući sve kriterije.
- Izvješća se mogu dobiti u pravom tekstu, HTML, JSON, XML i Excel obliku.
Vrsta licence : U početku je probna verzija dostupna besplatno. Da biste ga kupili ili dodatak, trebate ih kontaktirati.
Službeni URL: Testwell CTC ++
Za i protiv:
- Vrlo je pouzdan i jednostavan za upotrebu. Izbjegava svaku neprovjerenu isporuku koda.
- Dostupna je besplatna probna verzija.
- Može se koristiti za programe na različitim jezicima kao što su C, Java, C # itd.
- Dobar je za sve domene poput zdravstva, prijevoza, automobila itd., S visokim pokrivanjem koda.
- Podržava sve kompajlere i unakrsne prevoditelje.
- Njegov se trošak ne otkriva, stoga morate kontaktirati tvrtku radi pojedinosti o cijenama.
Najnovije izdanje: Verzija 8.2.2
# 3) pokrivenost
Cobertura je alat za pokrivanje otvorenog koda za Javu. Ovo je alat zasnovan na Jcoverageu. Da biste koristili ovaj alat, trebate prijaviti dodatak Maven u datoteci POM.XML.
Ključne značajke:
- Podržava Java 7, Java 8, Java 9 i Java 10.
- Cobertura se može izvršiti iz naredbenog retka ili mrava.
- Nakon kompilacije izračunava Java bajt kod.
- Pokriva sve kriterije pokrivenosti koda, uključujući grane, klasu, paket itd.
- Izvješća se izrađuju u HTML-u ili XML-u.
- Ova izvješća imaju značajke filtriranja, uzlazno i silazno.
Vrsta licence: Opća javna licenca GNU (GPL)
Službeni URL: Pokrivenost
Za i protiv:
- To je alat za pokrivanje otvorenog koda.
- Njegova je izvješća lako razumljiva, s mogućnostima filtriranja prema potrebi.
- Dobro je dizajniran za programere kao i testere.
- Radi samo za Javu.
Najnovije izdanje: Verzija 2.1.1
# 4) JaCoCo
JaCoCo je besplatni alat za pokrivanje koda koji je razvio EclEmma. Razvijen je za zamjenu alata za pokrivanje Emma koda. Može se koristiti samo za mjerenje i prijavljivanje Java aplikacija.
Ključne značajke:
- Ovaj alat za pokrivanje koda može se koristiti samo za Javu. Podržava Java 7, Java 8, Java 9 i Java 10.
- Kompatibilan je sa svim vrstama izdane verzije datoteke klase Java.
- Obuhvaća linije, upute, metode, vrstu, grane i ciklomatsku složenost pokrivanja kodom.
- Javni kôd može instrumentirati na dva različita načina, tj. Bilo tijekom pokretanja koda s Java agentom ili prije izvođenja koda koji je izvan mreže.
- Dobivene podatke pohranjuje u datoteku ili ih šalje putem TCP-a. Formati izvješća uključuju CVS, XML i HTML.
- Podržava regresijske testove zajedno s funkcionalnim testovima, gdje se test slučajevi temelje na Junitu.
Službeni URL: JaCoCo
Za i protiv:
- Ovo je alat za pokrivanje otvorenog koda.
- Namijenjen je samo pokrivanju Java koda.
- Daje dobre performanse za velike Java projekte s minimalnim vremenom izvođenja.
- Zahtijeva manje implementacije uz minimalne ovisnosti o vanjskim knjižnicama i resursima.
- Postoje mnogi alati koji podržavaju JaCoCo poput Jenkins, Netbeans, Gradle, TeamCity, VS TEAM SERVICES, itd.
- Lako je konfigurirati JaCoCo u Mavenu, Junitu itd., Kako biste dobili izvještaj o pokrivenosti koda.
- Izvješće koje je generirao JaCoCo živopisno je i lako razumljivo.
Najnovije izdanje: Verzija 0.8.1, 21. ožujka 2018.
# 5) CodeCover
Alat CodeCover je proširivi alat za testiranje staklenih kutija otvorenog koda koji se može koristiti kao pokrivanje koda za Java softver. Razvijen je 2007. godine na Sveučilištu u Stuttgartu. Može se izvršiti u naredbenom retku, Eclipse i Ant.
Ključne značajke:
- To je alat za testiranje staklenih kutija za Java programe.
- Obuhvaća izjave, petlje, grane itd., Zajedno s pojmovima, pokrivačem upitnika i sinkroniziranim pokrivanjem.
- Izvješća se generiraju u formatu brzine mehanizma predloška.
Vrsta licence: EPL - Eclipse javna licenca.
besplatno preuzimanje softverskog sata zaposlenika
Službeni URL: CodeCover
Za i protiv:
- To je besplatan alat koji se može koristiti za pokrivanje koda.
- Koristi se za poboljšanje kvalitete testiranja i za stvaranje novih test slučajeva.
- Ograničen je za upotrebu u Javi i COBOL-u.
- Također ima ograničenja samo na jedan direktorij izvora.
Najnovije izdanje: Verzija 1.0.1.2 iz 2011
# 6) BullseyeCoverage
Bullseye je alat za pokrivanje koda za programe C ++ i C. Njegova cijena iznosi 800 USD za prvu godinu i 200 USD godišnje za obnovu.
Ključne značajke:
- Ovaj analizator pokrivenosti koda može se koristiti za C ++ i C.
- Ima značajku za izvoz rezultata u HTML, XML i GUI format.
- Dolazi s dodatnim značajkama poput spajanja, isključivanja koda, vizualizacije itd.
- Najveće je razočaranje što se spajanje rezultata može izvršiti samo na funkcionalnoj razini. Nije dopušteno na razini izjave ili stanja.
Vrsta licence: Plutajuća dozvola
Službeni URL: Bullseye
Za i protiv:
- Njegova uporaba ograničena je na C ++ i C.
- Troškovi alata su visoki. Pogotovo ako ne trebaju njegove dodatne značajke poput Visualizer, Spajanje, isključenje koda itd.
- Alat je jednostavan za upotrebu i jednostavna je uporaba.
- Izvješća su vrlo jednostavna i lako razumljiva.
- Njegova brzina izvršavanja je vrlo brza.
- Značajka spajanja nije tako dobra.
Najnovije izdanje: Verzija 8.14 u ožujku 2018
# 7) EMMA
Emma je vrlo popularan alat otvorenog koda za Java softver za mjerenje pokrivenosti koda. Razvio ga je Vlad Roubtsov. Obuhvaća sve vrste pokrivenosti poput klase, linije, metode itd.
Ključne značajke:
- To je 100% za Java softver.
- Njegova je posebna značajka što podržava razvoj velikih poduzeća.
- Ovaj alat ima velik udio na tržištu u usporedbi s ostalim besplatnim alatima za pokrivanje.
- Izvješća su dostupna u XML, HTML i običnom tekstualnom formatu.
Vrsta licence: CPL - Common Public License v1.0.
Službeni URL: EMMA
Za i protiv:
- Ovo je besplatan alat s vrlo dobrom brzinom.
- Prilično je jednostavan za upotrebu i pokriva sve kriterije pokrivenosti kodom.
- Ograničeno za upotrebu u Java softveru.
- Podržava ANT.
- Podržava instrumentaciju klase i može se izvoditi izvan mreže ili u letu.
- Najveći je nedostatak što ne podržava najnoviju verziju Jave i nije dobro održavan.
Najnovije izdanje: Emma-2.0.5320
# 8) OpenCover
OpenCover je alat otvorenog koda za pokrivanje koda softverom .Net. Dobro radi za .Net 2 i novije verzije. Razvijen je za prevladavanje problema s kojima se suočavaju tijekom upotrebe alata PartCover za pokrivanje koda softvera .Net.
Ključne značajke:
- Namijenjen je za sve .Net 2 i novije verzije softvera.
- Može ga instalirati NuGet paket, MSI ili ZIP datoteka.
- Daje 64 i 32-bitnu podršku za .Net 4 i .Net 2.
- Pruža jednostavan postupak pokrivanja koda.
- Također pruža bolje rukovanje generičkim lijekovima od PartCovera.
- To je alat naredbenog retka.
- Daje izvješća kao XML izlaznu datoteku koja se koristi za izradu grafičkih izvješća. To se postiže uz podršku alata za generiranje izvješća.
Vrsta licence: MIT licenca
Službeni URL: OpenCover
Za i protiv:
- To je besplatan alat za testiranje pokrivenosti koda.
- Bolji je od PartCovera na nekoliko načina.
- Pruža vrlo korisnu dokumentaciju tijekom instaliranja OpenCover-a.
Najnovije izdanje: OpenCover 4.6.519, 8. veljače 2016
# 9) NCover
NCover je najbolji alat za pokrivanje koda koji je Peter Waldschmidt razvio za platformu .Net. To nije u potpunosti alat otvorenog koda. Samo je njegova beta verzija dostupna besplatno. Kompletni NCover 3 košta 480 USD.
Ključne značajke:
- Alat NCover namijenjen je samo .Net platformi.
- Ovo pokriva izvještaje i pokrivenost podružnica.
- Ovaj alat analizira kôd postavljajući ga iza privatnog.
- Alat NCoverExplorer dostupan je za pregledavanje izvornog koda s analizom pokrivenosti.
- Izvješća su predstavljena u metrici HTML formata.
Vrsta licence: Plutajuća dozvola
Službeni URL: NCover
Za i protiv:
- To je najbolji alat za pokrivanje koda za .Net softver.
- Samo je beta verzija besplatna. Inače, upotreba ovog alata skupo košta.
- Ima 4 godine zrelosti i vrlo je brz alat.
- Podrška je vrlo aktivna i stalno ažurira izdanja s nekim novim ispravcima i značajkama.
- Pomoću ovog alata vrlo je jednostavno stvoriti podatke o pokrivenosti koda.
- Dobar je za ručno i automatsko testiranje pokrivenosti koda.
Najnovije izdanje: NCOVER V5.5.3706.979 u rujnu 2017
# 10) Squish COCO
COCO je froglogic višestruka platforma, kao i višejezični alat za pokrivanje koda.
Jezici koje COCO podržava uključuju C ++, C, C #, System C, Tcl i QML. Izvješća su dostupna u različitim formatima kao što su HTML, XML, Text, JUnit i Cobertura. Trošak alata FROGLOGIC ne objavljuje. Međutim, kupljena licenca vrijedit će godinu dana.
Za više detalja treba kontaktirati podršku. To je probna verzija, demo, dijelovi obuke i mrežna podrška dostupni su, ali s ograničenjima na temelju kupljene licence.
Ključne značajke:
- To je alat za pokrivanje koda na više platformi i na više kompajlera.
- Instrumentira izvorni kod.
- Može se integrirati s različitim gradnjama, testovima i CI okvirima.
- Značajka spajanja izvješća dostupna je za bolju analizu.
Vrsta licence: Licenca žablje logike - plutajuća licenca.
Službeni URL: Squish COCO
Za i protiv:
- Podržava više vrsta projekata na jeziku poput C ++, C, C #, System C, Tcl i QML.
- Probna verzija dostupna je na tržištu s ograničenjima.
- Svaka licenca uključuje godinu dana podrške i ažuriranja.
- To olakšava postupak.
- Obuhvaća kriterije poput izjave, grana i uvjeta.
- Korisnik može odabrati drugačiji format izvješća.
- Pronalazi suvišne testove i nedostižni ili mrtvi kod.
Najnovije izdanje: Verzija 4.0 u 2017
# 11) Mjerač pokrivenosti
Alat CoverageMeter najčešće je korišteni lanac alata za pokrivanje koda za C / C ++ aplikacije. Njegova najnovija verzija je verzija 1.4. Pomaže u pronalaženju neprovjerenog izvornog koda. Sadrži dva pomoćna alata, tj. CoverageBrowser i CoverageScanner.
CoverageScanner radi kao alat naredbenog retka i zamjenjuje kompajler. Prilagođen je većini sastavljača koji se koriste na tržištu. CoverageBrowser radi kao grafičko sučelje koje se koristi za analizu i upravljanje završnim izvješćima. Nakon izvršenja, završno izvješće može se analizirati i njime se upravlja u CoverageBrowseru.
Ključne značajke:
kako pretvoriti YouTube u wav
- Alat uglavnom radi u dva dijela, tj. CoverageScanner i CoverageBorwser.
- Također dolazi s dva mala besplatna alata - izvršnim agentom i opcijskim Visual studijem 2005. i 2008. godine.
- Može se koristiti samo za aplikacije temeljene na C i C ++.
- Njegov je trošak približno 115,00 američkih dolara. Međutim, njegova je probna verzija također dostupna na tržištu.
Vrsta licence: Shareware
Službeni URL: Merač pokrivenosti
Za i protiv:
- Njegova besplatna probna verzija dostupna je na tržištu.
- Ograničeno je samo za programe C i C ++.
- Pokriva sve kriterije pokrivenosti koda kao što su funkcionalnost, iskaz, stanje, put itd.
Najnovije izdanje: Verzija 1.4
# 12) GCT
GCT, Generic Coverage Tool, besplatni je alat za pokrivanje koda za C tvrtke Brain Marick. Mjeri grane, petlje i pokrivenost relacijskog operatora. Alat dobiva C izvorni kod, a zatim vrši instrumentaciju i proizvodi objekt pomoću sistemskog C kompajlera. Na drugi način poput pravog kompajlera, on poziva C kompajler nakon instrumentiranja.
Ključne značajke:
- Dobar je za C programe.
- U najnovijoj verziji ponaša se kao dobar kompajler.
- Obuhvaća grane, višestruke uvjete, rubne uvjete i petlje.
Vrsta licence: GNU - Opća javna licenca.
Službeni URL: GCT
Za i protiv:
- Otvoreni je izvor i jednostavan je za upotrebu s moćnim sustavom izvještavanja.
- Alat radi samo na UNIX-u.
- Alat je velik i ima mnogo dijelova za ugradnju. To zahtijeva približno 33000 1k blokova.
- Ima fleksibilne alate za izvještavanje.
Najnovije izdanje: GCT 1.4
# 13) TCAT C / C ++
TCAT je alat za pokrivanje koda za analizu C, C ++ i JAVA. Njegova verzija 2.1 dobro funkcionira za NT 4.x i Windows 95. Komplet TCAT-a sastoji se od instrumentacijskog motora, runtime jedinice i grafički orijentiranog analizatora. Da biste saznali stvarne troškove i ograničenja, morate ih kontaktirati ili poslati e-mail.
Ključne značajke:
- Analizira grane, funkcije i pokrivenost pozivnog para.
- Radi za C, C ++ i Java.
- Način usmjeravanja i klika izvještavanja o pokrivenosti olakšava upotrebu alata.
- Dostupnost cjelovite korisničke dokumentacije i moćnog softvera za vizualizaciju za pomoć korisnicima.
- Ima demo verziju koja ne zahtijeva licenčni ključ, dok je za punu verziju potreban licenčni ključ.
Vrsta licence: Standardni plutajući upravitelj licenci (flexlm)
Službeni URL: TCAT C / C ++
Za i protiv:
- Ograničeno na C, C ++ i JAVA.
- Lako rješava velike i složene projekte bez problema s kapacitetom.
- Dobro razumijevanje programa iz stabla poziva i digrafa.
- Vrlo je pouzdan, s minimalnim izračunima i potpuno je potpun za upotrebu programera kao i testera.
- Demo verzija dostupna je samo 10 dana i to uz određena ograničenja.
- Trošak licence nije objavljen.
Najnovije izdanje: TCAT C / C ++, verzija 3.2.
# 14) Gretel
Gretel je besplatni alat za pokrivanje koda za Java program Carlsa Howellsa sa Sveučilišta Oregon. Da biste instalirali Gretel JVM 1.3 ili noviji, potreban je BCEL (Byte Code Engineering Library).
Ključne značajke:
- Podržava pokrivenost izjavama za Java program.
- Pomaže i zaostalom pokrivanju testom ponovnim postavljanjem programa i uklanjanjem instrumenta iz već izvedenog koda.
- Može se pokrenuti u naredbenom retku ili GUI-u.
- Izvješća su dostupna u GUI-ju.
Vrsta licence: BSD
Službeni URL: Gretel
Za i protiv:
- To je alat otvorenog koda.
- Nije kompatibilan s JUnit-om.
Najnovije izdanje: Verzija 1.0rc2 u lipnju 2002.
# 15) JCov
Jcov je alat za pokrivanje Java koda otvorenog koda. Razvijen je i implementiran sa SUN JDK. Djeluje na dva načina instrumentacijom java bajtkoda, tj. Statičkim instrumentacijama i dinamičkim instrumentacijama.
Ključne značajke:
- Alat je dobar za Java projekte.
- Izvještava o pokrivenosti blokova, linija, grana i metoda.
- Prikupljene podatke može spremiti u datotečni sustav ili na poslužitelj.
- Instrumentira Java bajt kod.
- Može instrumentirati u letu kao i izvan mreže.
Vrsta licence: UNP V2
Službeni URL: JCov
Za i protiv:
- To je alat za pokrivanje otvorenog koda.
- Ograničen je samo na Java projekte.
- Obuhvaća gotovo sve kriterije pokrivenosti kodom.
Najnovije izdanje: JCov verzija 3 u 2014.
Zaključak
Korištenje pokrivenosti kodom za održavanje standardne kvalitete ispitivanja dovodi do dodatnih testnih slučajeva kako bi se osiguralo da se kôd izvršava dok je pokrenut testni paket što je više moguće. To je doista korisno za učinkovito regresijsko testiranje.
Alati za pokrivanje koda koriste se samo za mjerenje pokrivenog koda tijekom izvođenja testova.
Vrlo je rijetko pronaći 100% pokrivenost kodom, a čak i 100% pokrivenost kodom ne dokazuje 100% testiranje kvalitete. Možete postići 100% pokrivenost kodom, a da vam još uvijek nedostaju neki od važnih testnih slučajeva. Da bi se postigla bolja razina djelotvornog testiranja, umjesto uobičajenog pokrivanja koda treba ići na testiranje mutacija.
******************
= >> Kontaktirajte nas da ovdje predložim popis.
******************
Preporučena literatura
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- 15 najboljih JAVA alata za razvoj, izgradnju, profiliranje, pokrivanje koda i pregled
- TOP 40 alata za analizu statičkog koda (najbolji alati za analizu izvornog koda)
- 10 najpopularnijih alata za pregled koda za programere i testere
- Implementacija Jave: Izrada i izvršavanje Java JAR datoteke
- Java virtualni stroj: kako JVM pomaže u pokretanju Java aplikacije
- Pristupiti modifikatorima u Javi - Vodič s primjerima
- Java Vodič za refleksiju s primjerima