Exemple de couverture des conditions (Condition coverage)Exemple simpleConsidérons l'extrait de code suivant : if ( (A || B) && C ) où A, B et C représentent des expressions booléennes atomiques (i.e. non redivisibles en d'autres sous-expressions booléennes). Pour que les critères de la couverture des conditions soient vérifiés sur cet exemple, il faut que A, B et C aient été évalués au moins une fois "true" et une fois "false" lors des tests. Ainsi, dans notre exemple, 3 tests aboutissants aux évaluations respectives de A, B et C suivantes suffiraient à valider la couverture des conditions :
Exemple plus conséquentRemplaçons la condition ( (A || B) && C ) Une couverture de test intégrale consisterait à construire la table de vérité suivante et tester chaque cas :
En revanche, dans le cadre d'une couverture des conditions, il nous suffirait (par exemple) de tester uniquement les trois combinaisons ci-dessus surlignées en jaune. Revoir les différents niveaux de couverture de test Memento : Condition (ou Opérande booléen ou Sous-décision) : une formule logique insécable (atomique). On parle souvent de variable booléenne, elle est représentée par une lettre majuscule (A, B, C, etc.), peut avoir pour valeur "true" ou "false", mais ne peut pas être redivisée en d´autres "sous-conditions" plus simples. Décision : une formule logique pouvant être composée de plusieurs conditions séparées par des connecteurs logiques tels "ou", "et", "ou exclusif", etc. L´outil d´analyse de couverture du code Testwell CTC++ englobe toutes les catégories de couvertures de test, y compris les niveaux les plus élevés : la couverture des conditions / décisions modifiées (MC/DC) et surtout celle des conditions multiples (MCC). Il peut ainsi être utilisé pour obtenir des certifications comme par exemple DO-178B. last updated: 28.07.2010 © 2010 Verifysoft Technology GmbH |