OrgaMon-FS: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Root (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Root (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 4: | Zeile 4: | ||
type | type | ||
tTestProc = procedure (Path: string) of object; | tTestProc = procedure (Path: string) of object; | ||
tSelfTestProc = function : TStringList of object; | tSelfTestProc = function : TStringList of object; // noch nicht implementiert | ||
// Registration beim CareTaker | // Registration beim CareTaker | ||
// | // | ||
procedure addTest(NameSpace:string; test: tTestProc); overload; | procedure addTest(NameSpace:string; test: tTestProc); overload; // noch ohne Funktion | ||
procedure addTest(NameSpace:string; test: tSelfTestProc); overload; | procedure addTest(NameSpace:string; test: tSelfTestProc); overload; // noch ohne Funktion | ||
// Hilfs-Funktionen, Damit können sich fsTest-Implementierungen | // Hilfs-Funktionen, Damit können sich fsTest-Implementierungen | ||
// unabhängig von Datei-Operationen machen | // unabhängig von Datei-Operationen machen | ||
function getQuestion(Path:string):TStringList; | function getQuestion(Path:string):TStringList; // noch keine Idee zur Anwendung | ||
procedure setAnswer(sAnswer:TStringList); | procedure setAnswer(sAnswer:TStringList); // noch keine Idee zur Anwendung | ||
== Vorbereitungen == | == Vorbereitungen == |
Version vom 3. November 2009, 18:18 Uhr
Die OrgaMon-FS (FS= Funktions Sicherstellung) hat die Aufgabe sicherzustellen dass eine neue OrgaMon-Version allen Anforderungen genügt, die an sie gestellt werden. Durch den release-Fortschritt müssen Regressionen verhindert werden. Dies gelingt durch automatisierte Tests. Dazu sollten sich OrgaMon-Bereiche beim CareTaker registrieren, beim OrgaMon-Selbsttest werden Tests dieser Bereiche initiert. Die Registrierfunktion und der Registirieprotoyp lauten
// Prototypen, Test-Bereiche können "fsTest" oder "fsSelfTest" implementieren type tTestProc = procedure (Path: string) of object; tSelfTestProc = function : TStringList of object; // noch nicht implementiert // Registration beim CareTaker // procedure addTest(NameSpace:string; test: tTestProc); overload; // noch ohne Funktion procedure addTest(NameSpace:string; test: tSelfTestProc); overload; // noch ohne Funktion
// Hilfs-Funktionen, Damit können sich fsTest-Implementierungen // unabhängig von Datei-Operationen machen function getQuestion(Path:string):TStringList; // noch keine Idee zur Anwendung procedure setAnswer(sAnswer:TStringList); // noch keine Idee zur Anwendung
Vorbereitungen
- svn-Checkout des svns "svn://orgamon.de/fs"
- starte einen beliebigen OrgaMon-Mandanten und setze System->FunktionsSicherstellungsPfad auf deinen ausgecheckten Pfadnamen (Slash am Ende nicht vergessen!)
- gehe nach Ticket->Funktions Sicherstellung->Tests starten
-> wenn keine Fehler kommen ist alles in Butter!
Verzeichnis-Struktur der Tests
-~NameSpace~- { -~AussagekräftigerTestname~ -Soll-Ergebnis }
- Namespace: Jede Unit oder Teilfunktionalität inerhlab des OrgaMon registriert seine Test-Fähigkeit beim Test-Agenten unter einem Namespace. "Oc" (Orientation-Convert) war der erste Namespace der in die Testsuite aufgenommen wurde. Inerhalb eines Name-Space werden so auch thematisch die gleichen Tests durchgeführt - z.B. Finanz-Mathematik oder OLAP.
- AussagekräftigerTestname: Name eine Unterverzeichnisses des NameSpace. Ein Test benötigt 1 Unterverzeichnis. In diesem Verzeichnis liegen alle Rohstoffe, die zum Ablauf des Testes notwendig sind. Wie diese Verarbeitet werden ist Sache des Tests. Auch werden die Testergebnisse in dieses Verzeichnis gespeichert.
- Soll-Ergebnis Hier liegt eine oder mehrere Dateien, die nach einer erfolgreichen Durchführung eines Testes (in der regel im Rahmen der Einfühtrung eines neuen TEstes) gesichert wurde. Das "Soll-Ergebnis" legt offen wie genau die Ergebnis-Datei aussehen muss, so dass der Test als Erfolg gilt. "Soll-Ergebnis" spiegelt die Erwartungshaltung des Testsausganges wider.