Softwareontwikkeling en projectmanagement
Voor de beslissing „A en B” (A en B zijn voorwaarden waarvan de waarheidswaarden onafhankelijk kunnen worden gekozen) zijn twee testgevallen uitgevoerd: (A = waar, B = onwaar) en (A = onwaar, B = waar). Welke uitspraak over de dekkingscriteria is juist?
- ATakdekking is bereikt, maar conditiedekking niet
- BZowel takdekking als conditiedekking is bereikt
- CConditiedekking is bereikt, maar takdekking niet
Antwoord en toelichting tonen
Antwoord: C. Conditiedekking is bereikt, maar takdekking niet
Conditiedekking vereist dat elke afzonderlijke voorwaarde in een beslissing (A en B) minstens één keer waar en één keer onwaar is. In de twee testgevallen zijn A en B elk één keer waar en één keer onwaar, dus conditiedekking is bereikt. „A en B” is echter in beide testgevallen onwaar, en de tak voor een ware beslissing wordt nooit genomen, dus takdekking is niet bereikt. Omdat conditiedekking alleen geen takdekking garandeert, worden criteria gebruikt die aan beide voldoen, zoals beslissings-/conditiedekking. Merk op dat deze redenering uitgaat van de waarden die aan elke voorwaarde worden gegeven; bij kortsluitevaluatie, zoals met && in C, waarbij de rechterkant niet wordt geëvalueerd als de linkerkant onwaar is, kan men ook alleen de voorwaarden tellen die werkelijk zijn geëvalueerd.
Verder: nog 9 vragen over Softwareontwikkeling en projectmanagement