SOG-Helpcenter Logo SOG Business - Software

SOGERPUnitTestConsole - Aufruf der UnitTests (nur SOG Intern)


Die Optionen haben folgende Bedeutung:

 

-projpath Verzeichnis

Legt das Projektverzeichnis zur Testausführung fest. z.B. g:\hdlqs1. Ist die Option nicht angegeben, wird der Projektpfad über den Pfad der ausführenden TestHelper-Dll ermittelt.

-user Benutzer

Legt den Ausführungsbenutzer fest.

-dir Verzeichnis

Verzeichnis aus dem UnitTest Assemblies geladen werden. Initialwert: Verzeichnis in dem SOGERPUnitTestConsole liegt. Wird diese Option nicht angegeben, oder als Verzeichnis "-", wird ohne Statusverzeichnis gearbeitet.

-done Verzeichnis

Statusverzeichnis. Ist diese Option angegeben, wird für jeden Test in dem Statusverzeichnis eine Status oder Fehlerdatei erzeugt.
Dabei entstehen unterhalb des angegebenen Verzeichnisses zwei Unterverzeichnisse "Ok" und "Err". Jeder erfolgreiche Test legt eine Statusdatei in "Ok" an. Jeder fehlgeschlagene eine Fehlerdatei in "Err". Ist die Option "-rpt" nicht angegeben, werden nur solche Tests ausgeführt, zu denen noch keine Status- oder Fehlerdatei existiert.
Sollen alle Tests erneu ausgeführt werden, muss das Verzeichnis vor Programmstart wieder gelöscht werden.
Sollen bestimmte Tests erneut ausgeführt werden müssen die Status- oder Fehlerdateien dieser Tests gelöscht, oder SOGERPUnitTestConsole mit der Option "-rpt" aufgerufen werden.

-ignore Dll

Ermöglicht die Angabe von Dlls, die ignoriert werden sollen.

-dll Muster

Einschränkung der Verarbeitung auf eine bestimmte Dll oder ein Muster von Dlls. Initialwert: *.test.dll

-t Typename

Einschränkung der Testausführung auf den angegebenen Typ.

-m Methode

Einschränkung der Testausführung auf die angegebene Methode.

-rpt

Test auch dann ausführen, wenn im Protokollverzeichnis bereits eine Status- oder Fehlerdatei für diesen Test vorliegt.

-load Pfad

Legt fest, von wo gesuchte Assemblies zu laden sind.

-timeout

Durchführung einer Timeout-Überwachnung. Dauert ein Test mehr als 60 Sekunden, wird er abgebrochen. In der Testinitialisierung kann der Test eine abweichende Zeitdauer vereinbaren. (TestHelperInitParms, TimeoutMilliseconds)

-scriptdll DllPfad

Legt den Pfad der ActiveSkin-Script-Dll fest, die bei Zugriff auf Scripting geladen wird. Entspricht der Option "-scriptdll" von ActiveSkin und ermöglicht damit die Verwendung von sogerpUnitTestConsole zum Debuggen im DeveloperStudio.

-trc Umfang

Schaltet Trace ein, und legt den Ausführungsumfang fest.

Typischer Ablauf zur Durchführung aller Tests


  • Setzen Sie ggf. Ihre Testdatenbank zurück. (z.B. über prc.Developer\RestoreDatabase.bat  )

  • Löschen Sie das alte Protokollverzeichnis.

  • Rufen Sie prc.Developer\AllUnitTests.bat Protokollverzeichnis  auf. Geben Sie dabei ihr gewünschtes Protokollverzeichnis an.

  • Prüfen Sie Protokollverzeichnis\Err

  • Beheben Sie die Fehler in den Tests. Führen Sie die Tests entweder über das DeveloperStudio oder über das in der Protokolldatei vermerkte Kommando erneut aus.

  • Um alle auf Fehler gelaufenen Tests erneut auszuführen, löschen sie die Fehlerprotokolle in Protokollverzeichnis\Err  und rufen Sie prc.Developer\AllUnitTests.bat Protokollverzeichnis  erneut auf.Um alle oder bestimmte Tests erneut auszuführen, löschen Sie auch die entsprechenden (oder alle) Dateien unter Protokollverzeichnis\Ok  .

Beschleunigung der Ausführung aller Tests durch Parallelisierung


Es ist möglich, die Ausführung aller Tests auf mehr als einem Testprozessor zur Zeit zu starten. Dazu ist aber für jede Ausführungseinheit eine eigene Testdatenbank erforderlich.
Zum Starten der Tests für eine weitere Ausführungseinheit gehen Sie wie folgt vor:

  • Wählen Sie eine eindeutige Benutzerumgebung (z.B. qs1, qs2, qs3 ...). Die Benutzerumgebung darf nicht von anderen Entwicklern gleichzeitig verwendet werden.

  • Setzen Sie die Testdatenbank der Benutzerumgebung zurück. prc.Developer\RestoreDatabase.bat qs1  )

  • Zum Start der Tests in der Benutzerumgebung rufen Sie prc.Developer\AllUnitTests.bat Protokollverzeichnis qs1  auf.

Bitte beachten Sie:

  • Geben Sie für alle Ausführungseinheiten DAS GLEICHE Protokollverzeichnis an!

  • Starten Sie die Ausführungseinheiten auf unterschiedlichen Computern, so muss das Protokollverzeichnis auf einem Netzlaufwerk liegen.

  • Geben Sie für jede Ausführungseinheit eine eigene Benutzerumgebung (qs1, qs2, qs3, ...) an!

  • Die Benutzerumgebung darf nicht von anderen Entwicklern gleichzeitig verwendet werden.

Beispiel für den Aufruf eines einzelnen Tests


  • Setzen Sie ggf. Ihre Testdatenbank zurück. (z.B. über prc.Developer\RestoreDatabase.bat  )

  • Rufen Sie das folgenden Kommando auf (Setzen Sie dabei ihre gewünschten Parameter ein):
    SOGERPUnitTestConsole -rpt -done IhrProtokollVerzeichnis -dll IhreTestAssembly.dll -t IhreTestKlasse -m IhreTestMethode

Beispiel:

  SOGERPUnitTestConsole -rpt -done C:\temp\hdl_done -dll SOG.ERP.Entity.Test.dll -t TestProcOpt -m ProcOpt1

Das für den Aufruf notwendige Kommando finden Sie am Anfang der Status- oder Fehlerdatei im Protokollverzeichnis.

Test von Scripten in abgeleiteten Projekten


Zur Ausführung von ScriptTests können folgende Einstellungen verwendet werden:
Aktuelles Projekt: Script.Proj.Test
Debuggen.
- Externes Programm starten: D:\AllUser\xxx\bin\SOGERP\SOGERPUnitTestConsole.exe
- Befehlszeilenargumente: -dir D:\AllUser\xxx\scr\Script.Proj.Test\bin\Debug
- Aktuelles Verzeichnis: m:\xxx