top 15 code coverage tools
Elenco degli strumenti di copertura del codice più popolari per Java, JavaScript, C, C ++, C #, PHP, Eclipse, .Net e molti altri linguaggi di programmazione:
Nel test del software, ci sono diversi modi per misurare la copertura del test. Il metodo di copertura del codice è una delle tecniche più importanti.
Utilizzando gli strumenti di copertura del codice, è possibile identificare la quantità di codice testato durante l'esecuzione dei test. In parole semplici, la copertura del codice ci dice quanto del codice sorgente è coperto da una serie di casi di test. È una metrica importante per mantenere una qualità standard degli sforzi di QA.
Viene misurata la copertura del codice in percentuale del numero di righe eseguite rispetto al numero totale di righe di codice durante l'esecuzione dei test.
Al momento della scrittura dei casi di test, si dovrebbero tenere a mente tutti i criteri per la massima copertura del codice, ovvero i casi di test dovrebbero essere scritti per coprire tutte le istruzioni, funzioni, condizioni, percorsi, decisioni, cicli, valore dei parametri, criteri di ingresso e uscita.
Abbiamo diversi strumenti sul mercato per misurare la copertura del codice. Esploriamo alcuni di essi in dettaglio in questo articolo.
******************
= >> Contattaci per suggerire il tuo annuncio qui.
******************
Cosa imparerai:
Gli strumenti di copertura del codice più popolari nel 2019
Di seguito è riportato l'elenco degli strumenti di copertura del codice più popolari disponibili sul mercato.
# 1) Parasoft JTest
Parasoft Jtest è uno dei prodotti della suite di strumenti di test Parasoft.
Jtest consente di velocizzare lo sviluppo di applicazioni basate su Java con il minimo rischio, una guida adeguata e un'analisi. Viene utilizzato per unit test e code coverage integrato con test manuali e automatizzati. Il suo rapporto fornisce una buona immagine del codice coperto e quindi riduce al minimo i rischi.
Caratteristiche principali:
- Viene utilizzato per applicazioni basate su Java.
- È uno strumento multi-tasking che include analisi del flusso di dati, test unitari, analisi statica, rilevamento degli errori di runtime, test di copertura del codice ecc.
- Può raccogliere copertura da diversi framework e metodi di test.
- Può essere eseguito in modalità riga di comando, GUI basata su eclipse o con sistemi CI.
- I suoi report e analisi di alta qualità includono anche dettagli di tracciabilità e test basati sulla modifica del codice.
Tipo di licenza: Software commerciale proprietario
URL ufficiale: Parasoft JTest
Pro e contro:
- È molto costoso da usare.
- È un buon strumento per il miglior prodotto di qualità con una soluzione multiuso per ridurre tempi e rischi.
- I rapporti e le analisi sono molto facili da capire e completano i massimi aspetti di qualità.
Ultima uscita: Versione 10.3.3 del 7 novembre 2017.
# 2) Testwell CTC ++
Testwell CTC ++ è uno strumento molto popolare di Verifysoft Technology. È uno strumento di analisi e copertura del codice affidabile per C, C ++, C # e Java.
Questa è la scelta principale per la maggior parte dei settori in qualsiasi dominio. Assicura la completezza dei test. Viene fornito con un kit di qualificazione. Per questo strumento sono disponibili anche una versione di prova gratuita, formazione online e presentazioni dal vivo. È disponibile in tre pacchetti solo CTC ++ Host, CTC ++ Host-Target add-on e CTC ++ Bitcov add-on.
salesforce test intervista domande e risposte pdf
Per C # e Java, richiede un pacchetto aggiuntivo separato.
Caratteristiche principali:
- La sua caratteristica principale è che può essere utilizzato per applicazioni di lingue e domini diversi.
- Può essere utilizzato anche con tutti gli strumenti di unit test.
- Come strumento di copertura del codice, fornisce una copertura completa che include tutti i criteri.
- I report possono essere ottenuti in testo semplice, HTML, JSON, XML ed Excel.
Tipo di licenza : Inizialmente, la versione di prova è disponibile gratuitamente. Per acquistarlo o il suo componente aggiuntivo, è necessario contattarli.
URL ufficiale: Testwell CTC ++
Pro e contro:
- È molto affidabile e facile da usare. Evita la consegna di codice non testato.
- È disponibile una versione di prova gratuita.
- Può essere utilizzato per applicazioni in diversi linguaggi come C, Java, C # ecc.
- È utile per tutti i settori come l'assistenza sanitaria, i trasporti, l'automotive, ecc., Con un'elevata copertura del codice.
- Supporta tutti i compilatori e cross-compilatori.
- Il suo costo non viene divulgato, quindi è necessario contattare l'azienda per i dettagli sui prezzi.
Ultima uscita: Versione 8.2.2
# 3) Copertura
Cobertura è uno strumento di copertura del codice open source per Java. Questo è uno strumento basato su Jcoverage. Per utilizzare questo strumento è necessario dichiarare il plug-in Maven nel file POM.XML.
Caratteristiche principali:
- Supporta Java 7, Java 8, Java 9 e Java 10.
- Cobertura può essere eseguito dalla riga di comando o da ant.
- Dopo la compilazione, calcola il bytecode java.
- Copre tutti i criteri di copertura del codice inclusi rami, classe, pacchetto ecc.
- I report vengono prodotti in HTML o XML.
- Questi rapporti hanno le caratteristiche di filtraggio, ascendente e discendente.
Tipo di licenza: Licenza pubblica generale GNU (GPL)
URL ufficiale: Copertura
Pro e contro:
- È uno strumento di copertura del codice open source.
- I suoi rapporti sono facili da capire con opzioni per filtrare secondo le necessità.
- È ben progettato per sviluppatori e tester.
- Funziona solo per Java.
Ultima uscita: Versione 2.1.1
# 4) JaCoCo
JaCoCo è un toolkit gratuito per la copertura del codice sviluppato da EclEmma. È stato sviluppato per la sostituzione dello strumento di copertura del codice Emma. Può essere utilizzato solo per misurare e generare rapporti su applicazioni basate su Java.
Caratteristiche principali:
- Questo strumento di copertura del codice può essere utilizzato solo per Java. Supporta Java 7, Java 8, Java 9 e Java 10.
- È compatibile con tutti i tipi di versioni di file di classe Java rilasciate.
- Copre linee, istruzioni, metodi, tipo, rami e complessità ciclomatica nella copertura del codice.
- Può strumentare il codice Java in due modi diversi, ovvero durante l'esecuzione del codice con l'agente Java o prima di eseguire il codice offline.
- Memorizza i dati risultanti in un file o li invia tramite TCP. I suoi formati di report includono CVS, XML e HTML.
- Supporta test di regressione insieme a test funzionali, in cui i casi di test sono basati su Junit.
URL ufficiale: JaCoCo
Pro e contro:
- Questo è uno strumento di copertura del codice open source.
- È vincolato solo per la copertura del codice Java.
- Offre buone prestazioni per progetti Java su larga scala con un runtime minimo.
- Richiede meno implementazioni con dipendenze minime da risorse e librerie esterne.
- Ci sono molti strumenti che supportano JaCoCo come Jenkins, Netbeans, Gradle, TeamCity, VS TEAM SERVICES, ecc.
- È facile configurare JaCoCo in Maven, Junit ecc., Al fine di ottenere un rapporto sulla copertura del codice.
- Il report generato da JaCoCo è colorato e di facile comprensione.
Ultima uscita: Versione 0.8.1 del 21 marzo 2018.
# 5) CodeCover
Lo strumento CodeCover è uno strumento di test della scatola di vetro open source estensibile che può essere utilizzato come copertura del codice per il software Java. È stato sviluppato nel 2007 presso l'Università di Stoccarda. Può essere eseguito dalla riga di comando, Eclipse e Ant.
Caratteristiche principali:
- È uno strumento di test della scatola di vetro per applicazioni java.
- Copre istruzioni, loop, filiali, ecc. Insieme a copertura a termine, copertura operatore punto interrogativo e copertura sincronizzata.
- I rapporti vengono generati nel formato di velocità del motore del modello.
Tipo di licenza: EPL - Eclipse Public License.
come creare un dashboard Jira
URL ufficiale: CodeCover
Pro e contro:
- È uno strumento gratuito che può essere utilizzato per la copertura del codice.
- Viene utilizzato per migliorare la qualità dei test e per creare nuovi casi di test.
- È limitato per l'utilizzo in Java e COBOL.
- Ha anche limitazioni per strumentare una sola directory di origine.
Ultima uscita: Versione 1.0.1.2 nel 2011
# 6) Copertura Bullseye
Bullseye è uno strumento di copertura del codice per programmi C ++ e C. Il suo prezzo è di $ 800 per il primo anno e di $ 200 all'anno per il rinnovo.
Caratteristiche principali:
- Questo analizzatore di copertura del codice può essere utilizzato per C ++ e C.
- Ha la funzione di esportare il risultato in formato HTML, XML e GUI.
- Viene fornito con funzionalità aggiuntive come fusione, esclusione del codice, visualizzazione ecc.
- La delusione più grande è che l'unione dei risultati può essere eseguita solo a livello funzionale. Non è consentito a livello di istruzione o condizione.
Tipo di licenza: Licenza flottante
URL ufficiale: Bullseye
Pro e contro:
- Il suo utilizzo è limitato a C ++ e C.
- I costi degli strumenti sono elevati. Soprattutto se non sono necessarie le sue funzionalità aggiuntive come Visualizer, Merge, codice escluso ecc.
- Lo strumento è intuitivo e il suo utilizzo è semplice.
- I rapporti sono molto chiari e di facile comprensione.
- La sua velocità di esecuzione è molto veloce.
- La sua funzione di fusione non è così buona.
Ultima uscita: Versione 8.14 a marzo 2018
# 7) EMMA
Emma è uno strumento open source molto popolare per il software Java per misurare la copertura del codice. È stato sviluppato da Vlad Roubtsov. Copre tutti i tipi di copertura come classe, linea, metodo ecc.
Caratteristiche principali:
- È al 100% per il software Java.
- La sua particolarità è che supporta lo sviluppo aziendale su larga scala.
- Questo strumento ha una grande quota nel mercato rispetto agli altri strumenti di copertura gratuiti.
- I report sono disponibili in formato XML, HTML e testo normale.
Tipo di licenza: CPL - Licenza pubblica comune v1.0.
URL ufficiale: EMMA
Pro e contro:
- Questo è uno strumento gratuito con una velocità molto buona.
- È abbastanza facile da usare e copre tutti i criteri di copertura del codice.
- Limitato per il suo utilizzo nel software Java.
- Supporta ANT.
- Supporta la strumentazione di classe e può essere eseguito offline o al volo.
- Il più grande svantaggio è che non supporta l'ultima versione di Java e non è ben mantenuto.
Ultima uscita: Emma-2.0.5320
# 8) OpenCover
OpenCover è uno strumento open source per la copertura del codice del software .Net. Funziona bene per .Net 2 e versioni successive. È stato sviluppato per superare i problemi riscontrati durante l'utilizzo dello strumento PartCover per la copertura del codice del software .Net.
Caratteristiche principali:
- È per tutti i software .Net 2 e superiori.
- Può essere installato tramite pacchetto NuGet, MSI o file ZIP.
- Fornisce supporto a 64 e 32 bit per .Net 4 e .Net 2.
- Fornisce un semplice processo di copertura del codice.
- Fornisce inoltre una migliore gestione dei generici rispetto a PartCover.
- È uno strumento da riga di comando.
- Fornisce report come file di output XML, che viene utilizzato per produrre report grafici. Questo viene fatto con il supporto dello strumento Generatore di rapporti.
Tipo di licenza: Licenza MIT
URL ufficiale: OpenCover
Pro e contro:
- È uno strumento gratuito per testare la copertura del codice.
- È meglio di PartCover in diversi modi.
- Fornisce una documentazione molto utile durante l'installazione di OpenCover.
Ultima uscita: OpenCover 4.6.519 l'8 febbraio 2016
# 9) NCover
NCover è il miglior strumento di copertura del codice sviluppato da Peter Waldschmidt per la piattaforma .Net. Non è uno strumento completamente open source. Solo la sua versione Beta è disponibile gratuitamente. Costa $ 480 per un NCover 3 completo.
Caratteristiche principali:
- Lo strumento NCover è solo per la piattaforma .Net.
- Questo copre dichiarazione e copertura di filiale.
- Questo strumento analizza il codice strumentandolo dietro che è privato.
- Lo strumento NCoverExplorer è disponibile per esplorare il codice sorgente con l'analisi della copertura.
- I rapporti sono presentati in metriche di formato HTML.
Tipo di licenza: Licenza flottante
URL ufficiale: NCover
Pro e contro:
- È il miglior strumento di copertura del codice per il software .Net.
- Solo la versione Beta è gratuita. Altrimenti, l'utilizzo di questo strumento costa molto.
- Ha 4 anni di maturità ed è uno strumento molto veloce.
- Il supporto è molto attivo e continua ad aggiornare le versioni con alcune nuove correzioni e funzionalità.
- È molto facile creare dati di copertura del codice con questo strumento.
- È utile per i test di copertura del codice manuali e automatici.
Ultima uscita: NCOVER V5.5.3706.979 nel settembre 2017
# 10) Squish COCO
COCO è uno strumento di copertura del codice multilingue multipiattaforma e cross-compilatore di froglogic.
I linguaggi supportati da COCO includono C ++, C, C #, System C, Tcl e QML. I report sono disponibili in diversi formati come HTML, XML, Text, JUnit e Cobertura. Il costo dello strumento non è reso noto da FROGLOGIC. Tuttavia, la licenza acquistata sarà valida per 1 anno.
Per maggiori dettagli, è necessario contattare il supporto. La sua versione di prova, demo, parti di formazione e supporto online sono disponibili ma con limitazioni in base alla licenza acquistata.
Caratteristiche principali:
- È uno strumento di copertura del codice multipiattaforma e cross-compilatore.
- Strumenta il codice sorgente.
- Può essere integrato con diverse build, test e framework CI.
- La funzione di unione di report è disponibile per una migliore analisi.
Tipo di licenza: Licenza logica Frog - Licenza flottante.
URL ufficiale: Squish COCO
Pro e contro:
- Supporta più tipi di progetti in un linguaggio come C ++, C, C #, System C, Tcl e QML.
- La sua versione di prova è disponibile sul mercato con limitazioni.
- Ogni licenza include un anno di supporto e aggiornamenti.
- Rende il processo facile.
- Copre criteri come dichiarazione, rami e condizioni.
- L'utente può scegliere un formato di rapporto diverso.
- Trova test ridondanti e codice non raggiungibile o morto.
Ultima uscita: Versione 4.0 nel 2017
# 11) CoverageMeter
Lo strumento CoverageMeter è la catena di strumenti di copertura del codice più comunemente utilizzata per le applicazioni C / C ++. La sua ultima versione è la 1.4. Aiuta a trovare il codice sorgente non testato. Contiene due strumenti secondari, ovvero CoverageBrowser e CoverageScanner.
CoverageScanner funziona come uno strumento da riga di comando e sostituisce il compilatore. Si adatta alla maggior parte dei compilatori utilizzati sul mercato. CoverageBrowser funziona come un'interfaccia grafica che viene utilizzata per analizzare e gestire i report finali. Dopo l'esecuzione, il report finale può essere analizzato e gestito nel CoverageBrowser.
Caratteristiche principali:
- Lo strumento funziona principalmente in due parti, ovvero CoverageScanner e CoverageBorwser.
- Inoltre viene fornito con due piccoli strumenti gratuiti: Execution Agent e Visual Studio 2005 e 2008 opzionali.
- Può essere utilizzato solo per applicazioni basate su C e C ++.
- Il suo costo è di circa $ 115,00. Tuttavia, la sua versione di prova è disponibile anche sul mercato.
Tipo di licenza: Shareware
URL ufficiale: CoverageMeter
Pro e contro:
- La sua prova gratuita è disponibile sul mercato.
- È limitato solo ai programmi C e C ++.
- Copre tutti i criteri di copertura del codice come funzionale, istruzione, condizione, percorso ecc.
Ultima uscita: Versione 1.4.4
# 12) GCT
GCT, Generic Coverage Tool, è uno strumento gratuito di copertura del codice per C di Brain Marick. Misura rami, loop e copertura di operatori relazionali. Lo strumento ottiene il codice sorgente C, quindi esegue la strumentazione e produce l'oggetto utilizzando il compilatore C di sistema. In un altro modo, come un vero compilatore, chiama il compilatore C dopo la strumentazione.
Caratteristiche principali:
- Va bene per i programmi C.
- Nell'ultima versione si comporta come un buon compilatore.
- Copre rami, condizioni multiple, condizioni al contorno e loop.
Tipo di licenza: GNU - Licenza pubblica generale.
URL ufficiale: GCT
Pro e contro:
- È un open source ed è facile da usare con il potente sistema di reportistica.
- Lo strumento funziona solo su UNIX.
- Lo strumento è grande e ha molte parti nell'installazione. Ciò richiede circa 33000 blocchi da 1k.
- Dispone di strumenti di reporting flessibili.
Ultima uscita: GCT 1.4
# 13) TCAT C / C ++
TCAT è uno strumento di copertura del codice per analizzare C, C ++ e JAVA. La sua versione 2.1 funziona bene per NT 4.xe Windows 95. Il kit di TCAT è composto dal motore strumentato, dall'unità di runtime e dall'analizzatore grafico. Per conoscere il costo reale e le limitazioni, è necessario contattarli o inviare una e-mail.
Caratteristiche principali:
- Analizza rami, funzioni e copertura del codice di coppia di chiamate.
- Funziona per C, C ++ e Java.
- Il metodo punta e clicca per la segnalazione della copertura rende lo strumento più facile da usare.
- Disponibilità di documentazione utente completa e potente software di visualizzazione per aiutare gli utenti.
- Ha una versione Demo che non richiede una chiave di licenza, mentre la versione completa richiede una chiave di licenza.
Tipo di licenza: Gestore di licenze mobili standard (flexlm)
URL ufficiale: TCAT C / C ++
Pro e contro:
- Limitato a C, C ++ e JAVA.
- Gestisce facilmente progetti grandi e complessi senza problemi di capacità.
- Buona comprensione del programma dall'albero delle chiamate e dai digrafi.
- È molto affidabile, con calcoli minimi ed è completamente completo per l'uso da parte di sviluppatori e tester.
- La versione demo è disponibile solo per un periodo di 10 giorni e anche questo con alcune limitazioni.
- Il costo della licenza non viene divulgato.
Ultima uscita: TCAT C / C ++, Ver. 3.2.
# 14) Gretel
Gretel è uno strumento gratuito di copertura del codice per il programma Java di Carls Howells presso l'Università dell'Oregon. Per installare Gretel JVM 1.3 o successivo, è richiesta la BCEL (Byte Code Engineering Library).
comando linux per confrontare due file
Caratteristiche principali:
- Supporta la copertura delle istruzioni per il programma Java.
- Aiuta anche la copertura residua dei test riorganizzando il programma e rimuovendo lo strumento dal codice già eseguito.
- Può essere avviato da una riga di comando o da una GUI.
- I rapporti sono disponibili nella GUI.
Tipo di licenza: BSD
URL ufficiale: Gretel
Pro e contro:
- È uno strumento open source.
- Non è compatibile con JUnit.
Ultima uscita: Versione 1.0rc2 nel giugno 2002.
# 15) JCov
Jcov è uno strumento di copertura del codice Java open source. È sviluppato e implementato con SUN JDK. Funziona strumentando java bytecode in due modi, ovvero strumentazione statica e strumentazione dinamica.
Caratteristiche principali:
- Lo strumento è utile per i progetti Java.
- Segnala la copertura di blocchi, linee, rami e metodi.
- Può salvare i dati raccolti nel file system o su un server.
- Strumenti java bytecode.
- Può strumentare al volo e offline.
Tipo di licenza: GPL V2
URL ufficiale: JCov
Pro e contro:
- È uno strumento di copertura del codice open source.
- È limitato solo ai progetti Java.
- Copre quasi tutti i criteri di copertura del codice.
Ultima uscita: JCov versione 3 nel 2014.
Conclusione
Utilizzo della copertura del codice per mantenere una qualità standard dei lead di test per includere casi di test aggiuntivi per assicurarsi che il codice venga eseguito durante l'esecuzione delle suite di test il più possibile. Questo è davvero molto utile per test di regressione efficaci.
Gli strumenti di copertura del codice vengono utilizzati solo per misurare il codice coperto durante l'esecuzione dei test.
È molto raro trovare una copertura del codice al 100% e anche una copertura del codice al 100% non dimostra il 100% di test di qualità. È possibile ottenere una copertura del codice del 100% pur perdendo alcuni dei casi di test importanti. Per ottenere un livello migliore di test efficaci, si dovrebbe optare per il test di mutazioni invece della normale copertura del codice.
******************
= >> Contattaci per suggerire un elenco qui.
******************
Lettura consigliata
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- 15 migliori strumenti JAVA per sviluppo, compilazione, profiler, copertura del codice e revisione
- TOP 40 strumenti di analisi del codice statico (migliori strumenti di analisi del codice sorgente)
- I 10 strumenti di revisione del codice più popolari per sviluppatori e tester
- Distribuzione Java: creazione ed esecuzione di file JAR Java
- Java Virtual Machine: come JVM aiuta nell'esecuzione di applicazioni Java
- Modificatori di accesso in Java - Tutorial con esempi
- Tutorial Java Reflection con esempi