Softwareentwicklung und Projektmanagement
Die Werte von temp und err lassen sich unabhängig voneinander wählen. Wie viele Testfälle sind für den Code „if (temp > 80) { fan = HIGH; } else { fan = LOW; } if (err) { log(); }“ mindestens nötig, um Anweisungsabdeckung zu erreichen (jede Anweisung mindestens einmal auszuführen)?
- A2
- B3
- C4
Antwort und Erläuterung anzeigen
Antwort: A. 2
Es gibt drei Anweisungen: fan = HIGH, fan = LOW und log(). Von fan = HIGH und fan = LOW wird in einem Durchlauf nur eine ausgeführt, daher sind mindestens zwei Durchläufe nötig; zum Beispiel führen die beiden Testfälle (temp > 80, err wahr) und (temp ≤ 80, err falsch) alle drei Anweisungen aus. 3 ergibt sich, wenn man für jede Anweisung einen Testfall erstellt, und 4 ist die Zahl aller Kombinationen von wahr und falsch der beiden Bedingungen (alle Pfade). Die Anweisungsabdeckung ist das schwächste Abdeckungskriterium; sie lässt sich zum Beispiel erreichen, ohne je den falschen Zweig des zweiten if (den Pfad, der nichts tut) zu durchlaufen.
Weiter: 9 weitere Fragen zu Softwareentwicklung und Projektmanagement