Insbesondere beim Arbeiten mit Parametern ist die Reihenfolge, in der die Ausdrücke ausgewertet werden, von entscheidender Bedeutung. Die Regeln der Auswertungsreihenfolge sind im Folgenden kurz zusammengefasst.
Innerhalb eines Feldes
werden verschachtelte Funktionsaufrufe und Parameter von innen
nach außen und solche auf gleicher Ebene von links nach rechts
ausgewertet. Der Ausdruck „->save(Helga,name)
${name}son
“ wird daher zu „Helga Helgason“
ausgewertet, während „${name}
->save(Helga,name)son
“ zu der Fehlermeldung
CB-DB-1018
führt, was auf die Benutzung eines
unbekannten Parameters hinweist.
Felder innerhalb eines Datensatzes werden in der Reihenfolge ihrer Definition in der DTD ausgewertet.
Datensätze einer Tabelle werden in den Testdaten von oben nach unten ausgewertet.
Tabellen werden in der Reihenfolge ihrer Definition in der DTD ausgewertet. Da die DTD diese Reihenfolge auch für die Testdaten erzwingt, ist dies äquivalent zu einer Auswertung von oben nach unten.
Funktionen und Parameter in den initialen Testdaten werden zum Zeitpunkt
des Einspielens bzw. bei Aufruf der Methode
assertInitialDataUnchanged()
oder
assertEqualsInitial()
ausgewertet. In den
erwarteten Testdaten passiert
dies bei Aufruf der Methode
assertEqualsExpected()
.
Da, wie eingangs erwähnt, der Parameter-Kontext vor Ausführen jeder Testmethode neu erstellt wird, ist die Ausführungsreihenfolge der einzelnen Methoden unerheblich.