Entwicklung und Test

Little-Least-Cost-Router

LLcr V1.41

Copyright © J.W.Schmitz-Hübsch

Letzte Änderung 02.01.2005

Inhaltsverzeichnis

 

Die Entwicklungs- und Testumgebung

Dieses Dokument beschreibt die Entwicklungs- und Testumgebung des Programms LLcr (Little-Least-Cost-Router). Es setzt voraus, dass Sie LLcr schon installiert haben und mit der Seite LLcr $TITLEUuml;bersichtDokumentation von LLcr vertraut sind.

Stellen Sie sich unter der Entwicklungs- und Testumgebung bitte nicht Besonderes vor. Es handelt sich einfach um die Scriptsprache Tcl/Tk, ein Testprogramm und alle Sourcen von LLcr. Sie wurde bisher nur unter Windows NT 4.0 und Windows 2000 eingesetzt.

Zum Seitenanfang

Inbetriebnahme der Entwicklungsumgebung

Falls Sie LLcr noch nicht installiert, konfiguriert und in Betrieb genommen haben, holen Sie das jetzt Seite LLcr Inbetriebnahmehier nach. Dann installieren Sie Tcl/Tk, freeWrap, HelpSystem, eventuell einen Editor und LLcrEntwicklung.

Tcl/Tk

Die Scriptsprache Tcl/Tk V8.4.1.0 (getestet) oder eine höhere Version (ungetestet) muss installiert werden. Die Sprache kann kostenlos von der Tcl-Homepage oder der Downloadpage heruntergeladen werden. Sie ist einfach zu installieren:

Als Literatur zu Tcl empfehle ich:

freeWrap

Um ausführbare Programme zu erzeugen, verwende ich freeWrap von Dennis LaBelle in der Version 5.5. Sie können das Programm kostenlos von der Freewrap-Homepage herunterladen. 

Die aktuelle Version von LLcr ist auf die Version 5.5 von freeWrap abgestimmt. Sie wurde nach der Umstellung auf Version 5.5 noch nicht mit der alten Version 5.1 von FreeWrap getestet.

HelpSystem

Für die Online-Hilfe eignet sich HelpSystem, Version 1.3c von Andrei A. Gratchev hervorragend. Man kann eigene Hilfedateien erstellen oder, wie ich, vorhandene Html-Dateien als Online-Hilfe verwenden. Sie können das Programm kostenlos herunterladen und verwenden.

Da ich an der aktuellen Version von HelpSystem einige kleinere Änderungen vorgenommen habe, dürfen Sie die mit LLcr gelieferte Datei help.tcl nicht durch die gleichnamige Datei aus HelpSystem ersetzen. LLcr benötigt keine weiteren Dateien aus HelpSystem.

Editor

Wenn Sie noch keinen Programmeditor haben, schauen Sie sich doch mal bei den Editoren auf der Tcl-Homepage nach. Wenn Sie den Unix-Editor "vi" gewohnt sind, ist vim die beste Wahl. Natürlich ist es nicht verboten, den Windows-Editor Notepad verwenden.

LLcrEntwicklung

Die Entwicklungs- und Testumgebung von LLcr muss installiert werden. Sie kann kostenlos von der LLcr-Homepage heruntergeladen werden. Die Installation ist einfach:

UnZip

Der Entpacker UnZip V5.40, V5.50 (getestet) oder eine andere Version (ungetestet) muss installiert werden. Damit entpackt die Tcl-Version von LLcr die TGeb-Tarifdatei aus dem Internet. Sie benötigen UnZip auch dann, wenn sie sonst einen anderen Entpacker verwenden. Das Programm kann kostenlos von einem der ftp-Server heruntergeladen werden, die auf der Info-ZIP Homepage  genannt sind. Die Installationsanleitung:

Im genannten ftp-Archiv finden Sie auch einen kostenlosen Packer zip23xN.zip (getestet) und einen kostenlosen GUI-Packer und -Entpacker wiz502xN.exe (ungetestet).

Zum Seitenanfang

LLcrTest

Mit dem Tcl-Programm llcrtest.tcl kann man LLcr testen. Zwei Initialisierungsdateien LlcrTest_Einzeltests_OK.ini und LlcrTest_Einzeltests_Fehler.ini werden mitgeliefert. Falls Sie diese Tests durchführen wollen, müssen Sie die Einträge anpassen, damit die Tests bei Ihnen fehlerfrei bzw. fehlerhaft ausgeführt werden.

Steuerung von LLcrTest

Im Dialog von LLcrTest werden alle Einträge angezeigt, mit denen der Test gesteuert wird. Dort stehen neben den Einträgen zur Steuerung der Tests alle Seite LLcr SteuerungEinträge zur Steuerung von LLcr. Dabei können mehrere Werte hintereinander angegeben werden. Sie beginnen immer mit einem Gleichheitszeichen.

Die Einträge werden in den Initialisierungsdateien mit dem Namen LLcrTest_*.ini gespeichert.

Bei den Einträgen für LLcrTest kann immer nur ein Wert im Eintrag stehen. Sie sind im folgenden beschrieben.

Erforderliche Einstellungen für den Test

LLcrProgramm

LLcrProgramm=standard  ={absoluterPfad}

Verzeichnis und Name des Programms, mit dem LLcr zum Test aufgerufen werden soll.

Beispiele sind

LLcrProgrammargumente

LLcrProgrammargumente={argumente für den Aufruf von LLcr}

Programmargumente, mit denen das Programm im Eintrag LLcrProgramm zum Test aufgerufen werden soll.

Beispiele sind

LLcrTestArbeitsverzeichnis

LLcrTestArbeitsverzeichnis=standard  ={absoluterPfad}

Pfad zum LLcr-TestArbeitsverzeichnis. Wenn das Verzeichnis nicht existiert, wird es angelegt.

Beispiele sind

LLcrTestverfahren

LLcrTestverfahren=Einzeltests  =Variantentests  =Kombinationstests

Für das Testprogramm LLcrTest steht hier das anzuwendende Testverfahren.

Nur das Testverfahren "Einzeltests" wurde bisher in LLcrTest verwendet. Die anderen beiden Verfahren sind ungetestet.

Zum Seitenanfang

Verzeichnisse usw. in der Entwicklungsumgebung

Das LLcr-Entwicklungsverzeichnis

Dieses Verzeichnis enthält alle Dateien der LLcrEntwicklungs-Installation. Dazu gehören auch die Dateien des Seite LLcr Verzeichnisse, Dateien und RegistryLLcr-Programmverzeichnisses aus der Seite LLcr InbetriebnahmeLLcr-Installation, die hier nicht mehr gesondert beschrieben werden. LLcr und LLcrTest finden dieses Verzeichnis selbstständig.

help.tcl

Das Tcl-Script enthält die Online-Hilfe HelpSystem von Andrei A. Gratchev. Es wurde für die Anforderungen von LLcr erweitert.

inirun.tcl

Das Tcl-Script enthält die Dialogverarbeitung. Es kann ohne Änderung auch für andere Programme eingesetzt werden. Es wird von llcr.tcl und llcrtest.tcl verwendet.

inirunimages.tcl

Das Tcl-Script enthält die Images für inirun.tcl.

LLcr.tcl

Das Tcl-Script enthält die Source von LLcr. Es lädt alle anderen Scripte und Dateien.

llcrentwicklungxxx.zip

Das Archiv der Entwicklungs- und Testumgebung für die LLcrEntwicklungs-Installation enthält alle erforderlichen Dateien aus diesem Verzeichnis. Im Dateinamen steht xxx für die Versionsnummer.

LLcrTest.exe

Das ist das fertig kompilierte, ausführbare Programm LLcrTest. Die Source steht in LLcrTest.tcl. Das Programm wird mit make4exe.bat erzeugt.

LLcrTest_Einzeltests_Fehler.ini

Diese Initialisierungsdatei enthält Testdaten für Einzeltests mit LLcrTest. Alle Tests - bis auf den ersten - werden bei mir fehlerhaft (!) absolviert. Bis es bei Ihnen so weit ist, müssen Sie sehr wahrscheinlich noch einige Einträge anpassen.

LLcrTest_Einzeltests_OK.ini

Diese Initialisierungsdatei enthält Testdaten für Einzeltests mit LLcrTest. Alle Tests werden bei mir fehlerfrei absolviert. Bis es bei Ihnen so weit ist, müssen Sie sehr wahrscheinlich noch einige Einträge anpassen.

Bedenken Sie, dass sich hierbei auch ein Test befindet, der die Konfiguration Ihres Routers ausliest und mit allen Passworten in LLcrTest_Ergebnis_jjjjmmtthhmmss.txt protokolliert. Dies wird im Eintrag Seite LLcr SteuerungInhalt der Konfigurationsdatei gesteuert.

LLcrTest_*.ini

Die Initialisierungsdateien von LLcrTest werden vom Programm in dem Verzeichnis angelegt, das beim Aufruf von LLcrTest aktuell ist. Dies ist normalerweise das LLcr-Entwicklungsverzeichnis. Die Beschreibung finden Sie unter Steuerung von LLcrTest.

LLcrTest.tcl

Das Tcl-Script enthält die Source von LLcrTest. Es lädt alle anderen Scripte und Dateien.

LLcrTest_MusterLANcom.lcf

Diese Datei enthält ein Muster für die Konfigurationsdatei des Routers. Sie wird für reproduzierbare Tests in Seite LLcr SteuerungKonfiguration lesen von eingetragen.

LLcrTest_MusterLANmonitor.log

Diese Datei enthält ein Muster für die Protokolldatei des Monitorprogramms Seite LLcr InbetriebnahmeLANmonitor. Sie wird für reproduzierbare Tests in Seite LLcr SteuerungGespraechsdauer lesen von eingetragen.

LLcrTest_MusterTGebTarife.zip

Diese Datei enthält ein Muster für die TGeb-Tarifdatei von 18.05.2003 aus dem Internet. Die Datei wird für reproduzierbare Tests in Seite LLcr SteuerungHttp Tarifdatei Adresse eingetragen.

make4exe.bat

Diese Windows-Batchdatei erzeugt die ausführbaren Programme Seite LLcr Verzeichnisse, Dateien und RegistryLLcr.exe und LLcrTest.exe. Das LLcr-Entwicklungsverzeichnis muss dabei das aktuelle Verzeichnis sein.

unzip.exe

Dieser Entpacker UnZip V5.50 ist Teil von Info-ZIP. Damit entpackt die Tcl-Version von LLcr die TGeb-Tarifdatei aus dem Internet. Sie benötigen UnZip auch dann, wenn Sie sonst einen anderen Entpacker verwenden.

Das Programm wird zusammen mit Seite LLcr InbetriebnahmeLLcr ausgeliefert und installiert.

Zum Seitenanfang

Das LLcrTest-Arbeitsverzeichnis

Das LLcrTest-Arbeitsverzeichnis enthält alle Dateien, die beim Ausführen von LLcrTest.exe erzeugt werden. Wo dieses Verzeichnis liegt und wie es heißt, wird in LLcrTestArbeitsverzeichnis angegeben. Wenn Sie das Verzeichnis löschen, wird LLcrTest.exe es beim nächsten Mal neu anlegen.

Fast alle Dateien in diesem Verzeichnis können mit einer der Auswertungen im Dialog angezeigt, bearbeitet und gedruckt werden.

LLcrTest_dbg.ini

Diese Debug-Parameterdatei enthält alle Einträge aus der verwendeten Initialisierungsdatei sowie interne Einträge. Sie wird nur für eine eventuelle Fehlersuche erzeugt.

LLcrTest.log

Dies ist die Protokolldatei von LLcrTest. Darin werden der Ablauf und alle Fehler des letzten Programmlaufes von LLcrTest protokolliert. Die Datei wird beim Programmanfang immer aus dem aktuellen Verzeichnis, aus dem LLcr-Entwicklungsverzeichnis und aus dem LLcrTest-Arbeitsverzeichnis gelöscht. Sie wird beim Programmende im aktuellen Verzeichnis erzeugt. Falls LLcrTest mit einem Fehler abgebrochen wird, bevor das LLcrTest-Arbeitsverzeichnis zum aktuellen Verzeichnis wurde, steht die Protokolldatei in dem Verzeichnis, das beim Start von LLcr das aktuelle Verzeichnis war oder im LLcr-Entwicklungsverzeichnis.

LLcr_nnnnnnnn.ini

Diese Dateien enthalten die Initialisierungsdateien für LLcr für jeweils einen Testlauf. nnnnnnnn ist die Nummer des Testlaufes. LLcr löscht vor einem Test nicht die alten Initialisierungsdateien.

LLcrTest_Ergebnis_jjjjmmtthhmmss.txt

Dies ist die Ergebnisdatei eines Tests. Sie wird von LLcrTest erzeugt. jjjjmmtthhmmss bezeichnet das Jahr, Monat, Tag, Stunde, Minute und Sekunde des Programmstarts von LLcrTest.

LLcrTest_Ergebnis_jjjjmmtthhmmss.log

Dies ist die Protokolldatei eines Tests. Sie enthält die Protokolle von LLcr während der Testläufe.  jjjjmmtthhmmss bezeichnet das Jahr, Monat, Tag, Stunde, Minute und Sekunde des Programmstarts von LLcrTest.

Zum Seitenanfang

Verweise auf andere Dokumente

Seite LLcr $TITLEUuml;bersichtÜbersicht

Seite LLcr InbetriebnahmeInbetriebnahme

Seite LLcr DialogbeschreibungDialogbeschreibung

Seite LLcr SteuerungSteuerung

Seite LLcr Verzeichnisse, Dateien und RegistryVerzeichnisse, Dateien usw.

Seite LLcr Unterst$TITLEuuml;tzungUnterstützung

Seite LLcr HistorieHistorie

Entwicklung und Test

Zum Seitenanfang