Code coverage

La “code coverage” (ou “couverture de code” en français) est une métrique utilisée en génie logiciel pour mesurer la quantité de code source d’une application qui est effectivement exécutée lors de l’exécution des tests automatisés. Elle est généralement exprimée en pourcentage, avec 100% indiquant que tous les aspects du code ont été testés.

La couverture de code est importante car elle donne une indication du niveau de confiance que l’on peut avoir dans les tests. Une faible couverture de code pourrait suggérer que de nombreuses parties du code n’ont pas été testées, augmentant ainsi le risque de bugs non détectés.

Types de couverture de code :

  1. Couverture des instructions (ou lignes) : Mesure la proportion d’instructions ou de lignes de code qui ont été exécutées.
  2. Couverture des branches : Mesure la proportion de branches (par exemple,
    if

    et

    else

    ) qui ont été suivies.

  3. Couverture des fonctions (ou méthodes) : Mesure la proportion de fonctions ou méthodes qui ont été appelées.
  4. Couverture des conditions : Évalue chaque condition pour vérifier si elles évaluent à la fois vrai et faux.
  5. Couverture des chemins : Vise à tester tous les chemins possibles à travers le code, ce qui peut être difficile voire impossible dans les grands systèmes en raison de la combinaison explosive des chemins possibles.

Pourquoi est-ce important ?

  1. Confiance : Une couverture de code élevée donne confiance en la qualité des tests.
  2. Réduction des bugs : Plus le pourcentage de couverture de code est élevé, moins il y a de chances de laisser passer des bugs non détectés.
  3. Maintenance : Une bonne couverture de code peut faciliter la maintenance et l’évolution du code à l’avenir.

Limitations de la couverture de code :

Il est important de noter que la couverture de code ne garantit pas la qualité ou l’exhaustivité des tests. Par exemple, avoir une couverture de code de 100% ne signifie pas que le logiciel est exempt de bugs. Il indique simplement que chaque partie du code a été exécutée pendant les tests. Cela ne garantit pas que tous les scénarios ou combinaisons de données ont été testés.

En conclusion, bien que la couverture de code soit une métrique utile, elle devrait être utilisée en combinaison avec d’autres méthodes et outils pour assurer la qualité du logiciel.

Please follow and like us:
Pin Share