Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

Version 1 Nächste Version anzeigen »

Businesstest-Skript

Jedes Businesstest-Skript ist automatisch von der Klasse org.nuclos.server.businesstest.execution.BusinessTestScript abgeleitet und hat dadurch unter anderem folgende Methoden zur Verfügung:

void attempt(Callable c)

Führt das übergebene Callable (z.B. eine Groovy Closure) aus und fängt auftretende Exceptions ab. Dabei wird ggf. der "Fehler"- oder "Warnung"-Zähler erhöht, abhängig vom Typ der Exception.
Die Ausführung des Scripts an sich wird dabei jedoch nicht abgebrochen, wie das normalerweise bei Exceptions der Fall wäre.

void fail(String message)

Lässt den Test fehlschlagen und trägt die angegebene message als Ergebnis ein.
Sollte nur in Ausnahmefällen verwendet werden, da meistens Assertions die bessere Alternative sind (welche jedoch einen Fehler melden, wenn sie fehlschlagen, statt nur einer Warnung).

Entitätsklassen

Für jedes vorhandene BO wird eine entsprechende Entitätsklasse generiert, über die auf die Attribute des BOs zugegriffen werden kann, und die einige Hilfsmethoden bereitstellt.

Getter und Setter für Attribute

Analog zur Serverregel-API: Für jedes Attribut eines BOs gibt es einen Getter und Setter. Für Referenz-Attribute zusätzlich einen Getter und Setter für die ID.
In Groovy können diese Methoden wie einfache Properties benutzt werden.

Beispiel:

Order order = new Order()
order.orderNumber = 10020149
println order.orderNumber

get(Long id) - Datensatz über die ID holen

Statische Methode der Entitätsklasse - entspricht QueryProvider.getById() der Serverregel-API.

Beispiel:

Order order = Order.get(12345)

save() - Datensatz speichern

Speichert den aktuellen Datensatz - entspricht BusinessObjectProvider.insert() oder BusinessObjectProvider.update(), je nachdem ob der Datensatz neu ist.
Eine manuelle Unterscheidung ist hier nicht mehr nötig.

Beispiel:

Order order = new Order()
order.orderNumber = 10020149
order.save()
order.orderNumber++
order.save()

delete() - Datensatz löschen

Löscht den aktuellen Datensatz - entspricht BusinessObjectProvider.delete().
Der Datensatz muss hierfür bereits gespeichert gewesen sein.

Beispiel:

 Order.get(12345).delete()
  • Keine Stichwörter