WHITEBOXTESTEN
Erfassen aller
* Entscheidungen
* Bedingungen
* Mehrfachbedingungen
- 5. Algorithmus |
Erfassen aller Mehrfachbedingungen
Der zuvor durchgeführten Tests deckten Fehler auf, die zu einem fünften
Algorithmus führten. Das korrigierte Programm muss einem erneuten
Test unterzogen werden. Dazu wird eine neue Testmethode eingeführt.
Zum Erfassen aller Mehrfachbedingungen muss man genügend
Testfälle definieren, so dass alle möglichen Kombinationen
der Bedingungen einer Entscheidung und alle Eingänge wenigstens
einmal angesprochen werden.
|
Bedingung |
Ja-Zweig |
Nein-Zweig |
1 |
zahl<>ratezahl AND bonus<>0 |
Zahl falsch UND Bonus<>0 |
Zahl richtig ODER kein Bonus |
2 |
ratezahl <> zahl |
Zahl falsch |
Zahl richtig |
3 |
ratezahl |
Zahl kleiner |
Zahl größer |
4 |
ratezahl = zahl |
Zahl richtig |
Zahl falsch |
Insbesondere sind alle Kombinationen zu untersuchen, die sich aus der
ersten Bedingung ergeben:
Ja-Zweig |
Nein-Zweig |
höchstens vier falsche Eingaben |
zahl=ratezahl OR bonus=0
Dies ist wahr, wenn |
|
1. zahl=ratezahl, bonus=0, d.h. 6. Zahl richtig |
|
2. zahl=ratezahl, bonus<>0, d.h. spätestens die
5. Zahl ist richtig |
|
3. zahl<>ratezahl, bonus=0, d.h. alle fünf Zahlen
sind falsch |
Die Testfälle müssen die Ausgänge der Bedingung 1
insbesondere mit den Ausgängen der Bedingung 3 kombinieren.
Folgende Testdaten decken alle Bedingungsausgänge ab:
Bed. |
Testfall |
Eingabe |
erwartete Ausgabe |
1.1 |
1 |
4 - 15 - 6
- 7 - 8 - 13 |
zu klein - zu groß - zu klein
- zu klein - zu klein - (6. Zahl wird nicht angenommen, da Bonus erschöpft
ist),
falsche Zahl, Punkte: 0 |
1.2 |
2 |
14 - 5 - 13 |
zu groß - zu klein - Punkte: 300 |
1.3 |
3 |
2 - 5 - 15
- 10 - 14 |
zu klein - zu klein - zu groß
- zu klein - zu groß - falsche Zahl, Punkte: 0 |
4 |
4 |
13 |
Punkte: 500 |
Mit dieser Methode werden differenziertere Testfälle entworfen
als mit der Bedingungsstrategie. Ihre Anwendung auf den vierten Algorithmusentwurf
wäre ebenso erfolgreich gewesen und hätte den fehlenden Bonusabzug
deutlicher aufgedeckt.
Im fünften Algorithmus führte die
Ausführung der mit dieser Methode erzeugten Testdaten zu keinen
Fehlern. |