Développement logiciel et gestion de projet
La spécification dit « émettre un avertissement si la température est de 85 °C ou plus », mais le micrologiciel contient par erreur « if (t > 85) ». La température t est un entier. Laquelle des valeurs de test suivantes permet de détecter cette erreur ?
- A84 °C
- B85 °C
- C86 °C
Afficher la réponse et l'explication
Réponse : B. 85 °C
D'après la spécification, un avertissement doit être émis à 85 °C, mais t > 85 est faux quand t = 85 : la spécification et l'implémentation ne divergent donc que lorsqu'on donne 85 °C. À 84 °C, aucune des deux n'émet d'avertissement, et à 86 °C, les deux en émettent un : l'erreur n'est donc pas visible. Tester des valeurs qui incluent la frontière elle-même, comme ici, est l'idée de l'analyse des valeurs limites. La confusion des opérateurs de comparaison est une erreur fréquente dans les contrôles de seuil des micrologiciels.
Continuer : 9 autres questions sur Développement logiciel et gestion de projet