Anmerkungen zu Aufgabenlösungen
Allgemein
- Wdh.: Klarmachen, was passiert:
- Dokumente, Quellcode etc. übersichtlich, verständlich,
ausführlich
- Ausgaben entsprechend, insbesondere für Testprozeduren
- "Führen Sie ... aus": sicherstellen, daß obige Ausgaben
gemacht
werden (d.h., schon in der Testprozedurimplementierung vorsehen)
und ausdrucken
- für's Entwickeln von Tests: Zeit einplanen -> Tests dauern!
- Fehler im Testling vs. Fehler in der Testprozedur:
Wenn durch Tests vermeintliche Fehler aufgedeckt werden, muss der
Tester zunächst prüfen, ob der Fehler auch nicht in der
Testprozedur/Testspezifikation liegt. Wenn man sich da sicher ist, dann
handelt es sich wirklich um einen Fehler.
- [tech.] Ausgaben in die RTT-Konsole ausschalten, weil sie selbst Zeit
benötigen --> kann zum Fehlschlagen der Tests führen
Szenario "PLS"
- Schalter ON/OFF/AUTO vs. fsbSwitchOn/fsbSwitchAuto:
- Der Controller muß die volle Kombinatorik (2^2=4)
verarbeiten. Das
heisst, dass auch die Werte für (fsbSwitchOn && fsbSwitchAuto)
festgelegt sind!
- vgl. R002: fsbSwitchOn wird separat ausgewertet.
- Der Testling ist fehlerhaft.
Übung zu Aufgabeserie 2
Spielzeuganforderungen
- R001
- Wenn der Anschnallzeichen-Schalter den Wert ON liefert, dann wird das
Anschnallzeichen an der Adresse 0 aktiviert.
- R002
- Wenn der Anschnallzeichen-Schalter nicht den Wert ON liefert, dann wird
das Anschnallzeichen an der Adresse 0 deaktiviert.
Testfälle
@tag TC001
@description Das Anschnallzeichen an der Adresse 0 wird aktiviert, wenn der
Anschnallzeichenschalter aktiviert wird.
@condition true
@event Anschnallzeichen-Schalter liefert den Wert ON: fsbSwitchOn=true
@expected Anschnallzeichen an Adresse 0 wird aktiviert:
fsbSignOn[0][FSB]=true
@tag TC002
@description Das Anschnallzeichen an der Adresse 0 wird deaktiviert, wenn der
Anschnallzeichenschalter nicht den Wert ON liefert.
@condition true
@event Anschnallzeichen-Schalter liefert nicht den Wert ON:
fsbSwitchOn=false
@expected Anschnallzeichen an Adresse 0 wird deaktiviert:
fsbSignOn[0][FSB]=false
fsbSignOn[<addr>] gibt schon das FSB-Sign an.
Ansonsten dürft Ihr auch signState[<addr>][FSB] (wie in der
Testprozedur) verwenden.
Gleichungen
fsbSwitchOn=true => fsbSignOn[0][FSB]=true
&&
fsbSwitchOn=false => fsbSignOn[0][FSB]=false
oder (in vager Erinnerung an das Grundstudium wg. (a => b) <=> (!(a &&
!b))
!(fsbSwitchOn=true && ! fsbSignOn[0][FSB]=true)
&&
!(fsbSwitchOn=false && ! fsbSignOn[0][FSB]=false)
Die Wahrheitstabelle deckt es auf - fsbSwitchAuto ist (hier im
Spielzeugbeispiel!) einfach egal:
fsbSwitchOn |
fsbSwitchAuto |
fsbSignOn[0][FSB] |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 1 |
1 | 1 | 1 |
Last modified: Mai 17, 2004 18:41:36 (cest)
Stefan Bisanz stefan@bisanz-online.de