Développement logiciel et gestion de projet

Pour la décision « A et B » (A et B sont des conditions dont les valeurs de vérité peuvent être fixées indépendamment), on a exécuté deux cas de test : (A = vrai, B = faux) et (A = faux, B = vrai). Quelle affirmation sur les critères de couverture est correcte ?

  1. ALa couverture des branches est atteinte, mais pas la couverture des conditions
  2. BLa couverture des branches et la couverture des conditions sont toutes deux atteintes
  3. CLa couverture des conditions est atteinte, mais pas la couverture des branches
Afficher la réponse et l'explication

Réponse : C. La couverture des conditions est atteinte, mais pas la couverture des branches

La couverture des conditions exige que chaque condition individuelle d'une décision (A et B) prenne au moins une fois la valeur vrai et la valeur faux. Dans les deux cas de test, A et B prennent chacune une fois vrai et faux : la couverture des conditions est donc atteinte. En revanche, « A et B » est faux dans les deux cas de test, et la branche correspondant à une décision vraie n'est jamais empruntée : la couverture des branches n'est donc pas atteinte. Comme la couverture des conditions seule ne garantit pas la couverture des branches, on utilise des critères qui satisfont les deux, comme la couverture décision/condition. Notez que ce raisonnement porte sur les valeurs données à chaque condition ; avec l'évaluation en court-circuit, comme pour && en C, où le côté droit n'est pas évalué quand le côté gauche est faux, on peut aussi ne compter que les conditions réellement évaluées.

S'entraîner sur ce thème Retour au thème

Autres questions sur Développement logiciel et gestion de projet

  1. Dans le test ascendant (bottom-up), que construit-on pour remplacer un module de niveau supérieur qui n'existe pas encore, afin qu'il appelle le module de niveau inférieur testé, lui transmette les données de test et reçoive les résultats ?
  2. Pendant les tests, on a tracé une courbe de croissance de fiabilité avec le temps de test (ou le nombre de cas de test exécutés) en abscisse et le nombre cumulé de défauts trouvés en ordonnée. La courbe monte encore, sans signe de saturation (de palier). Quel jugement est le plus approprié ?
  3. Lors du test d'intégration d'un micrologiciel de 25 KLOC (25 000 lignes), on a trouvé 30 défauts. D'après les résultats passés de l'organisation, la valeur de référence des défauts trouvés dans cette phase est de 2 à 4 par KLOC. Quelle est l'évaluation la plus appropriée de ce résultat ?
  4. Avec Git, deux développeurs ont modifié la même ligne du même fichier sur des branches différentes, puis l'une des branches a été fusionnée dans l'autre. Que se passe-t-il ?
  5. Quelle méthode de revue des documents de conception ou du code source est dirigée par un modérateur, attribue des rôles aux participants, se déroule de façon formelle à l'aide de listes de contrôle, etc., et enregistre les défauts trouvés et vérifie leur correction ?