top 15 code coverage tools
Liste des outils de couverture de code les plus populaires pour Java, JavaScript, C, C ++, C #, PHP, Eclipse, .Net et de nombreux autres langages de programmation:
Dans les tests logiciels, il existe plusieurs façons de mesurer la couverture des tests. La méthode de couverture de code est l'une des techniques les plus importantes.
En utilisant les outils de couverture de code, on peut identifier la quantité de code testée lors de l'exécution des tests. En termes simples, la couverture de code nous indique dans quelle mesure le code source est couvert par un ensemble de cas de test. C'est une métrique importante pour maintenir une qualité standard des efforts d'AQ.
La couverture du code est mesurée en pourcentage du nombre de lignes exécutées sur le nombre total de lignes de code lors de l'exécution des tests.
Au moment de la rédaction des cas de test, il faut garder tous les critères à l'esprit pour une couverture de code maximale, c'est-à-dire que les cas de test doivent être écrits pour couvrir toutes les instructions, fonctions, conditions, chemins, décisions, boucles, valeur de paramètre, critères d'entrée et de sortie.
Nous avons plusieurs outils sur le marché pour mesurer la couverture du code. Examinons certains d'entre eux en détail dans cet article.
******************
= >> Nous contacter pour suggérer votre annonce ici.
******************
Ce que vous apprendrez:
Outils de couverture de code les plus populaires en 2019
Vous trouverez ci-dessous la liste des outils de couverture de code les plus populaires disponibles sur le marché.
# 1) Parasoft JTest
Parasoft Jtest est l'un des produits de la suite d'outils de test Parasoft.
Jtest vous permet d'accélérer le développement d'applications basées sur Java avec un risque minimum, des conseils et une analyse appropriés. Il est utilisé pour les tests unitaires et la couverture de code intégrée aux tests manuels et automatisés. Son rapport donne une bonne image du code couvert et minimise ainsi les risques.
Principales caractéristiques:
- Il est utilisé pour les applications basées sur Java.
- C'est un outil multi-tâches qui comprend l'analyse du flux de données, les tests unitaires, l'analyse statique, la détection des erreurs d'exécution, les tests de couverture de code, etc.
- Il peut recueillir une couverture à partir de différents cadres et méthodes de test.
- Il peut être exécuté en mode ligne de commande, avec une interface graphique basée sur éclipse ou avec des systèmes CI.
- Ses rapports et analyses de haute qualité incluent également la traçabilité et les détails des tests basés sur le changement de code.
Type de licence: Logiciel commercial propriétaire
URL officielle: Parasoft JTest
Avantages et inconvénients:
- Son utilisation est très coûteuse.
- C'est un bon outil pour le produit de la meilleure qualité avec une solution polyvalente pour réduire le temps et les risques.
- Les rapports et analyses sont très faciles à comprendre et complètent au maximum les aspects de qualité.
Dernière version: Version 10.3.3 du 7 novembre 2017.
# 2) Testwell CTC ++
Testwell CTC ++ est un outil très populaire de Verifysoft Technology. Il s'agit d'un outil d'analyse et de couverture de code fiable pour C, C ++, C # et Java.
C'est le choix principal pour la plupart des industries dans n'importe quel domaine. Il garantit l'exhaustivité des tests. Il est livré avec un kit de qualification. Un essai gratuit, une formation en ligne et des présentations en direct sont également disponibles pour cet outil. Il est disponible en trois packages CTC ++ Host only, CTC ++ Host-Target add-on et CTC ++ Bitcov add-on.
quel est le meilleur logiciel de clonage de disque dur
Pour C # et Java, il nécessite un package complémentaire distinct.
Principales caractéristiques:
- Sa principale caractéristique est qu'il peut être utilisé pour des applications de différents langages et domaines.
- Il peut également être utilisé avec tous les outils de test unitaire.
- En tant qu'outil de couverture de code, il fournit une couverture complète, y compris tous les critères.
- Les rapports peuvent être obtenus sous forme de texte simple, HTML, JSON, XML et Excel.
Type de licence : Au départ, la version d'essai est disponible gratuitement. Pour l'acheter ou son add-on, il faut les contacter.
URL officielle: Testwell CTC ++
Avantages et inconvénients:
- Il est très fiable et facile à utiliser. Il évite toute livraison de code non testé.
- Une version d'essai gratuite est disponible.
- Il peut être utilisé pour des applications dans différents langages comme C, Java, C # etc.
- Il convient à tous les domaines tels que la santé, le transport, l'automobile, etc., avec une couverture de code élevée.
- Il prend en charge tous les compilateurs et compilateurs croisés.
- Son coût n'est pas divulgué, vous devez donc contacter la société pour obtenir des détails sur les prix.
Dernière version: Version 8.2.2
# 3) Couverture
Cobertura est un outil de couverture de code open source pour Java. Il s'agit d'un outil basé sur Jcoverage. Pour utiliser cet outil, il faut déclarer le plug-in Maven dans le fichier POM.XML.
Principales caractéristiques:
- Il prend en charge Java 7, Java 8, Java 9 et Java 10.
- Cobertura peut être exécuté à partir de la ligne de commande ou de fourmi.
- Après la compilation, il calcule le bytecode java.
- Il couvre tous les critères de couverture du code, y compris les branches, la classe, le package, etc.
- Les rapports sont produits en HTML ou XML.
- Ces rapports ont les fonctionnalités de filtrage, ascendant et descendant.
Type de licence: Licence publique générale GNU (GPL)
URL officielle: Couverture
Avantages et inconvénients:
- C'est un outil de couverture de code open source.
- Ses rapports sont faciles à comprendre avec des options de filtrage selon les besoins.
- Il est bien conçu pour les développeurs ainsi que pour les testeurs.
- Cela ne fonctionne que pour Java.
Dernière version: Version 2.1.1
# 4) JaCoCo
JaCoCo est une boîte à outils gratuite de couverture de code développée par EclEmma. Il a été développé pour le remplacement de l'outil de couverture de code Emma. Il ne peut être utilisé que pour mesurer et générer des rapports sur les applications Java.
Principales caractéristiques:
- Cet outil de couverture de code ne peut être utilisé que pour Java. Il prend en charge Java 7, Java 8, Java 9 et Java 10.
- Il est compatible avec tous les types de version de fichier de classe Java publiée.
- Il couvre les lignes, les instructions, les méthodes, le type, les branches et la complexité cyclomatique dans la couverture du code.
- Il peut instrumenter le code Java de deux manières différentes, c'est-à-dire soit lors de l'exécution du code avec l'agent Java, soit avant d'exécuter le code qui est hors ligne.
- Il stocke les données obtenues dans un fichier ou les envoie via TCP. Ses formats de rapport incluent CVS, XML et HTML.
- Il prend en charge les tests de régression ainsi que les tests fonctionnels, où les cas de test sont basés sur Junit.
URL officielle: JaCoCo
Avantages et inconvénients:
- Il s'agit d'un outil de couverture de code open source.
- Il est uniquement lié à la couverture du code Java.
- Il offre de bonnes performances pour les projets Java à grande échelle avec un temps d'exécution minimum.
- Il nécessite moins d'implémentation avec un minimum de dépendances sur les bibliothèques et ressources externes.
- Il existe de nombreux outils prenant en charge JaCoCo comme Jenkins, Netbeans, Gradle, TeamCity, VS TEAM SERVICES, etc.
- Il est facile de configurer JaCoCo dans Maven, Junit etc., afin d'obtenir un rapport de couverture de code.
- Le rapport généré par JaCoCo est coloré et facile à comprendre.
Dernière version: Version 0.8.1 du 21 mars 2018.
# 5) CodeCover
L'outil CodeCover est un outil de test de boîte de verre open source extensible qui peut être utilisé comme couverture de code pour les logiciels Java. Il a été développé en 2007 à l'Université de Stuttgart. Il peut être exécuté dans la ligne de commande, Eclipse et Ant.
Principales caractéristiques:
- C'est un outil de test de boîte en verre pour les applications Java.
- Il couvre les instructions, les boucles, les branches, etc. ainsi que la couverture des termes, la couverture des opérateurs de points d'interrogation et la couverture synchronisée.
- Les rapports sont générés au format de vitesse du moteur de modèle.
Type de licence: EPL - Licence publique Eclipse.
sites Web pour regarder l'anime anglais doublé
URL officielle: CodeCover
Avantages et inconvénients:
- C'est un outil gratuit qui peut être utilisé pour la couverture du code.
- Il est utilisé pour améliorer la qualité des tests et pour créer de nouveaux cas de test.
- Il est limité pour une utilisation en Java et COBOL.
- Il a également des limitations pour instrumenter un seul répertoire source.
Dernière version: Version 1.0.1.2 en 2011
# 6) Couverture Bullseye
Bullseye est un outil de couverture de code pour les programmes C ++ et C. Son prix est de 800 $ la première année et de 200 $ par année pour le renouvellement.
Principales caractéristiques:
- Cet analyseur de couverture de code peut être utilisé pour C ++ et C.
- Il a la fonction d'exporter le résultat au format HTML, XML et GUI.
- Il est livré avec des fonctionnalités supplémentaires telles que la fusion, l'exclusion de code, la visualisation, etc.
- La plus grande déception est que la fusion des résultats ne peut se faire qu'au niveau fonctionnel. Cela n'est pas autorisé au niveau de l'instruction ou de la condition.
Type de licence: Licence flottante
URL officielle: Bullseye
Avantages et inconvénients:
- Son utilisation est limitée à C ++ et C.
- Les coûts d'outils sont élevés. Surtout si l'on n'a pas besoin de ses fonctionnalités supplémentaires comme Visualizer, Merge, code excluant etc.
- L'outil est convivial et son utilisation est simple.
- Les rapports sont très simples et faciles à comprendre.
- Sa vitesse d'exécution est très rapide.
- Cette fonction de fusion n’est pas très bonne.
Dernière version: Version 8.14 en mars 2018
# 7) EMMA
Emma est un outil open source très populaire pour les logiciels Java pour mesurer la couverture de code. Il a été développé par Vlad Roubtsov. Il couvre tous les types de couverture comme la classe, la ligne, la méthode, etc.
Principales caractéristiques:
- C'est 100% pour les logiciels Java.
- Sa particularité est qu'il prend en charge le développement des entreprises à grande échelle.
- Cet outil a une grande part sur le marché par rapport aux autres outils de couverture gratuits.
- Les rapports sont disponibles au format XML, HTML et texte brut.
Type de licence: CPL - Licence publique commune v1.0.
URL officielle: EMMA
Avantages et inconvénients:
- C'est un outil gratuit avec une très bonne vitesse.
- Il est assez facile à utiliser et couvre tous les critères de couverture de code.
- Limité pour son utilisation dans les logiciels Java.
- Il prend en charge ANT.
- Il prend en charge l'instrumentation de classe et peut être exécuté hors ligne ou à la volée.
- Le plus gros inconvénient est qu'il ne prend pas en charge la dernière version de Java et n'est pas bien entretenu.
Dernière version: Emma-2.0.5320
# 8) OpenCover
OpenCover est un outil open source pour la couverture de code des logiciels .Net. Cela fonctionne bien pour .Net 2 et supérieur. Il a été développé pour surmonter les problèmes rencontrés lors de l'utilisation de l'outil PartCover pour la couverture de code du logiciel .Net.
Principales caractéristiques:
- C'est pour tous les logiciels .Net 2 et supérieurs.
- Il peut être installé par package NuGet, fichier MSI ou ZIP.
- Il offre un support 64 et 32 bits pour .Net 4 et .Net 2.
- Il fournit un processus de couverture de code simple.
- Il offre également une meilleure gestion des génériques que PartCover.
- C'est un outil de ligne de commande.
- Il fournit des rapports sous forme de fichier de sortie XML, qui est utilisé pour produire des rapports graphiques. Cela se fait avec le support de l'outil générateur de rapports.
Type de licence: Licence MIT
URL officielle: OpenCover
Avantages et inconvénients:
- C'est un outil gratuit pour tester la couverture du code.
- C'est mieux que PartCover de plusieurs manières.
- Il fournit une documentation très utile lors de l'installation d'OpenCover.
Dernière version: OpenCover 4.6.519 le 8 février 2016
# 9) NCover
NCover est le meilleur outil de couverture de code développé par Peter Waldschmidt pour la plate-forme .Net. Ce n'est pas un outil entièrement open source. Seule sa version bêta est disponible gratuitement. Il en coûte 480 $ pour un NCover 3 complet.
Principales caractéristiques:
- L'outil NCover est uniquement destiné à la plate-forme .Net.
- Cela couvre la couverture des relevés et des succursales.
- Cet outil analyse le code en l'instrumentant derrière ce qui est privé.
- L'outil NCoverExplorer est disponible pour parcourir le code source avec une analyse de couverture.
- Les rapports sont présentés sous forme de métriques au format HTML.
Type de licence: Licence flottante
URL officielle: NCover
Avantages et inconvénients:
- C'est le meilleur outil de couverture de code pour les logiciels .Net.
- Seule la version bêta est gratuite. Sinon, l'utilisation de cet outil coûte cher.
- Il a 4 ans de maturité et est un outil très rapide.
- Le support est très actif et continue de mettre à jour les versions avec de nouveaux correctifs et fonctionnalités.
- Il est très facile de créer des données de couverture de code avec cet outil.
- C'est bon pour les tests manuels et automatisés de couverture de code.
Dernière version: NCOVER V5.5.3706.979 en septembre 2017
# 10) Squish COCO
COCO est un outil de couverture de code multi-langage multiplateforme et croisé de froglogic.
Les langages pris en charge par COCO incluent C ++, C, C #, System C, Tcl et QML. Les rapports sont disponibles dans différents formats tels que HTML, XML, Texte, JUnit et Cobertura. Le coût de l'outil n'est pas divulgué par FROGLOGIC. Cependant, la licence achetée sera valable 1 an.
Pour plus de détails, il faut contacter le support. Il s'agit de la version d'essai, de la démonstration, de la formation et de l'assistance en ligne, mais avec des limitations en fonction de la licence achetée.
Principales caractéristiques:
- Il s'agit d'un outil de couverture de code multi-plateforme et multi-compilateur.
- Il instrumente le code source.
- Il peut être intégré à différents builds, tests et frameworks CI.
- La fonctionnalité de fusion des rapports est disponible pour une meilleure analyse.
Type de licence: Licence Frog logic - Licence flottante.
URL officielle: Squish COCO
Avantages et inconvénients:
- Il prend en charge plusieurs types de projets dans un langage tel que C ++, C, C #, System C, Tcl et QML.
- Cette version d’évaluation est disponible sur le marché avec des limitations.
- Chaque licence comprend un an de support et de mises à jour.
- Cela facilite le processus.
- Il couvre des critères tels que la déclaration, les branches et les conditions.
- L'utilisateur peut choisir un format de rapport différent.
- Recherche les tests redondants et le code inaccessible ou mort.
Dernière version: Version 4.0 en 2017
# 11) CoverageMeter
L'outil CoverageMeter est la chaîne d'outils de couverture de code la plus couramment utilisée pour les applications C / C ++. Sa dernière version est la version 1.4. Cela aide à trouver le code source non testé. Il contient deux sous-outils, à savoir CoverageBrowser et CoverageScanner.
CoverageScanner fonctionne comme un outil de ligne de commande et remplace le compilateur. Il est adapté à la plupart des compilateurs utilisés sur le marché. CoverageBrowser fonctionne comme une interface graphique qui est utilisée pour analyser et gérer les rapports finaux. Après l'exécution, le rapport final peut être analysé et géré dans CoverageBrowser.
Principales caractéristiques:
- L'outil fonctionne principalement en deux parties, à savoir CoverageScanner et CoverageBorwser.
- Il est également livré avec deux petits outils gratuits: l'agent d'exécution et Visual Studio 2005 et 2008 en option.
- Il ne peut être utilisé que pour les applications basées sur C et C ++.
- Son coût est d'environ 115,00 $. Cependant, sa version d'essai est également disponible sur le marché.
Type de licence: Shareware
URL officielle: CoverageMeter
Avantages et inconvénients:
- Son essai gratuit est disponible sur le marché.
- Il est limité pour les programmes C et C ++ uniquement.
- Il couvre tous les critères de couverture de code tels que fonctionnel, instruction, condition, chemin, etc.
Dernière version: Version 1.4
# 12) GCT
GCT, Generic Coverage Tool, est un outil de couverture de code gratuit pour C par Brain Marick. Il mesure les branches, les boucles et la couverture des opérateurs relationnels. L'outil obtient le code source C, puis effectue l'instrumentation et produit l'objet à l'aide du compilateur système C. D'une autre manière comme un vrai compilateur, il appelle le compilateur C après l'instrumentation.
Principales caractéristiques:
- C'est bon pour les programmes C.
- Dans la dernière version, il se comporte comme un bon compilateur.
- Il couvre les branches, les conditions multiples, les conditions aux limites et les boucles.
Type de licence: GNU - Licence publique générale.
URL officielle: GCT
Avantages et inconvénients:
- C'est une source ouverte et facile à utiliser avec le puissant système de reporting.
- L'outil ne s'exécute que sous UNIX.
- L'outil est volumineux et comporte de nombreuses pièces en cours d'installation. Cela nécessite environ 33000 blocs de 1k.
- Il dispose d'outils de reporting flexibles.
Dernière version: GCT 1.4
# 13) TCAT C / C ++
TCAT est un outil de couverture de code pour analyser C, C ++ et JAVA. Sa version 2.1 fonctionne bien pour NT 4.x et Windows 95. Le kit de TCAT se compose du moteur instrumenté, de l'unité d'exécution et de l'analyseur orienté graphique. Afin de trouver le coût réel et les limites, il faut les contacter ou envoyer un e-mail.
Principales caractéristiques:
- Il analyse les branches, les fonctions et la couverture des codes de paires d'appels.
- Cela fonctionne pour C, C ++ et Java.
- La méthode pointer-cliquer de rapport de couverture facilite l'utilisation de l'outil.
- Disponibilité d'une documentation utilisateur complète et d'un logiciel de visualisation puissant pour aider les utilisateurs.
- Il a une version de démonstration qui ne nécessite pas de clé de licence, tandis que la version complète nécessite une clé de licence.
Type de licence: Gestionnaire de licence flottante standard (flexlm)
URL officielle: TCAT C / C ++
Avantages et inconvénients:
- Limité à C, C ++ et JAVA.
- Gère facilement des projets volumineux et complexes sans problèmes de capacité.
- Bonne compréhension du programme grâce à l'arborescence des appels et aux digraphes.
- Il est très fiable, avec un minimum de calculs et est entièrement complet pour l'utilisation des développeurs ainsi que des testeurs.
- La version de démonstration est disponible pour une période de 10 jours seulement et cela aussi avec quelques restrictions.
- Le coût de la licence n'est pas divulgué.
Dernière version: TCAT C / C ++, version 3.2.
# 14) Gretel
Gretel est un outil gratuit de couverture de code pour le programme Java par Carls Howells de l'Université de l'Oregon. Pour installer Gretel JVM 1.3 ou version ultérieure, BCEL (Byte Code Engineering Library) est requis.
Principales caractéristiques:
classe C ++ de liste double chaînée
- Il prend en charge la couverture des déclarations pour le programme Java.
- Il aide également la couverture de test résiduelle en ré-instrumentant le programme et en supprimant l'instrument du code déjà exécuté.
- Il peut être démarré dans une ligne de commande ou une interface graphique.
- Les rapports sont disponibles dans l'interface graphique.
Type de licence: BSD
URL officielle: Gretel
Avantages et inconvénients:
- C'est un outil open source.
- Il n'est pas compatible avec JUnit.
Dernière version: Version 1.0rc2 en juin 2002.
# 15) JCov
Jcov est un outil de couverture de code Java open source. Il est développé et implémenté avec SUN JDK. Il fonctionne en instrumentant le bytecode java de deux façons, à savoir l'instrumentation statique et l'instrumentation dynamique.
Principales caractéristiques:
- L'outil convient aux projets Java.
- Il rapporte la couverture des blocs, des lignes, des branches et des méthodes.
- Il peut enregistrer les données collectées dans le système de fichiers ou sur un serveur.
- Il instrumente le bytecode java.
- Il peut instrumenter à la volée comme hors ligne.
Type de licence: GPL V2
URL officielle: JCov
Avantages et inconvénients:
- C'est un outil de couverture de code open source.
- Il est limité uniquement aux projets Java.
- Il couvre presque tous les critères de couverture de code.
Dernière version: JCov Version 3 en 2014.
Conclusion
L'utilisation de la couverture de code pour maintenir une qualité standard des tests conduit à inclure des cas de test supplémentaires pour s'assurer que le code est exécuté lors de l'exécution des suites de tests autant que possible. Ceci est en effet très utile pour des tests de régression efficaces.
Les outils de couverture de code sont simplement utilisés pour mesurer le code couvert lors de l'exécution des tests.
Il est très rare de trouver une couverture de code à 100%, et même une couverture de code à 100% ne prouve pas un test de qualité à 100%. Vous pouvez atteindre une couverture de code de 100% tout en manquant encore certains des cas de test importants. Afin d'atteindre un meilleur niveau de test efficace, il faut opter pour le test de mutation au lieu d'une couverture de code normale.
******************
= >> Nous contacter pour suggérer une liste ici.
******************
lecture recommandée
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- 15 meilleurs outils JAVA pour le développement, la construction, le profilage, la couverture de code et la révision
- TOP 40 des outils d'analyse de code statique (meilleurs outils d'analyse de code source)
- Top 10 des outils de révision de code les plus populaires pour les développeurs et les testeurs
- Déploiement Java: création et exécution d'un fichier JAR Java
- Machine virtuelle Java: comment JVM aide à exécuter une application Java
- Modificateurs d'accès en Java - Tutoriel avec des exemples
- Tutoriel de réflexion Java avec des exemples