Résumé
En génie logiciel, la couverture de code est une mesure utilisée pour décrire le taux de code source exécuté d'un programme quand une suite de test est lancée. Un programme avec une haute couverture de code, mesurée en pourcentage, a davantage de code exécuté durant les tests ce qui laisse à penser qu'il a moins de chance de contenir de bugs logiciels non détectés, comparativement à un programme avec une faible couverture de code. Différentes métriques peuvent être utilisées pour calculer la couverture de code ; les plus basiques sont le pourcentage de sous routine et le pourcentage d'instructions appelées durant l'exécution de la suite de test. La mesure de ce taux implique souvent l'utilisation de tests unitaires. Il y a de nombreuses méthodes pour mesurer la couverture de code. Les principales sont : Couverture des fonctions (Function Coverage) - Chaque fonction dans le programme a-t-elle été appelée ? Couverture des instructions (Statement Coverage) - Chaque ligne du code a-t-elle été exécutée et vérifiée ? Couverture des points de tests (Condition Coverage) - Toutes les conditions (tel que le test d'une variable) sont-elles exécutées et vérifiées ? (Le point de test teste-t-il ce qu'il faut ?) Couverture des chemins d'exécution (Path Coverage) - Chaque parcours possible (par exemple les 2 cas vrai et faux d'un test) a-t-il été exécuté et vérifié ? Certaines méthodes sont liées, par exemple : La couverture des chemins implique à la fois la couverture des instructions et la couverture des points de tests ; La couverture des instructions n'implique pas la couverture des points de tests, comme le montre le code ci-dessous (écrit en langage C) : void foo(int bar) { printf("this is "); if (bar < 1) { printf("not "); } printf("a positive integer"); } Si la fonction foo est appelée avec l'argument bar = -1, alors on assure la couverture des instructions (elles sont toutes exécutées) ; par contre, la couverture des points de tests n'est pas assurée.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.