Für TPTP sind nur die Eigenschaften CLASSPATH und ROOTDIR von Bedeutung.
Die während der Ausführung zu implementierenden Dateien sind:
1. Alle Dateien im Klassenpfad des Testprojekts außer den folgenden Typen: .java, .execution, .testsuite, .deploy, .location, .artifact.
2. Alle Testressourcen, die mit dem Artefakt verknüpft sind, das für die Testausführung verwendet wird.
3. Die Eigenschaft CLASSPATH der allgemeinen Eigenschaften des Artefakts, das für die Testausführung verwendet wird.
Die folgende Prozedur wird verwendet, um ROOTDIR zu berechnen:
Schritt 1 |
TPTP sucht zuerst auf dem fernen System nach der Positionseigenschaft ROOTDIR (falls diese angegeben ist). Anschließend wird deren Wert als Ausgabe dieses Schrittes verwendet.
Falls die Positionseigenschaft ROOTDIR nicht angegeben wurde, oder wenn sie nicht auf dem fernen System angegeben wurde, leitet TPTP unter Verwendung des temporären Verzeichnisses, das in der Umgebung des fernen System gefunden wurde, einen Wert ab. TPTP sucht in dieser Reihenfolge nach LOCAL_AGENT_TEMP_DIR, TEMP und TMP und verwendet den zuerst gefundenen Wert als Ausgabe für diesen Schritt. |
Schritt 2 |
TPTP sucht auf dem lokalen System nach der Positionseigenschaft USR_NAME. Wenn diese Eigenschaft nicht vorhanden ist, wird die Eigenschaft 'user.name' aus Java (System.getProperty("user.name")) extrahiert. |
Schritt 3 |
TPTP verknüpft die Ausgaben von Schritt 1 und 2 und bildet daraus das zu verwendende ROOTDIR. |
Um JARs zu konfigurieren, die implementiert und unter Ihr Stammverzeichnis ROOTDIR gestellt werden, konfigurieren Sie den Parameter CLASSPATH für Ihr Artefakt. Um JARs zu konfigurieren, die nicht implementiert werden müssen (die zum Beispiel bereits an der Position bzw. auf dem System vorhanden sind, auf das implementiert wird) die aber noch in den Klassenpfad eingeschlossen werden müssen, konfigurieren Sie den Parameter CLASSPATH in Ihrer Position. Der Unterschied zwischen dem Artefakt und der Position CLASSPATH besteht also darin, ob die JAR implementiert und referenziert oder nur an der Implementierungsposition referenziert werden soll.
Bestimmte Bibliotheken werden auch dann nicht implementiert, wenn Sie in der Eigenschaft Klassenpfad des Artefakts aufgelistet werden. Es handelt sich um folgende Bibliotheken:
Workbench-Clients vor TPTP 3.3 können keine Agentencontroller ab TPTP 3.3 verwenden (sie müssen ältere Agentencontroller vor TPTP 3.3 verwenden). Clients ab TPTP 3.3 können sowohl alte als auch neue Agentencontroller verwenden. Es folgt eine Zusammenfassung der aktuellen Client-/Serverunterstützung in TPTP:
Clients >= TPTP 3.3 und Server >= TPTP 3.3 [verwenden bei ungesichertem Agentencontroller das neue Dateiübertragungsprotokoll und bei gesichertem Agentencontroller das alte Dateiübertragungsprotokoll]
Clients >= TPTP 3.3 und Server < TPTP 3.3 [verwenden für ungesicherte und gesicherte Agentencontroller das alte Dateiübertragungsprotokoll]
Clients < TPTP 3.3 und Server >= TPTP 3.3 [diese Kombination funktioniert nicht, da ältere Clients das neue Serverdateiübertragungsprotokoll nicht verstehen]
Clients < TPTP 3.3 und Server < TPTP 3.3 [verwenden für ungesicherte und gesicherte Agentencontroller das alte Dateiübertragungsprotokoll]
Es gab Änderungen beim Dateiübertragungsservice in TPTP 3.3 und TPTP 4.0 (zur Beschleunigung der Implementierung), die die Verwendung eines neuen Dateiübertragungsserviceprotokolls zur Folge hatten. Alle Clients vor TPTP 3.3 kennen dieses neue Protokoll noch nicht und die Testimplementierung schlägt darum fehl. Neuere Clients kennen die neuen und alten Protokolle und daher funktioniert die Implementierung in diesem Fall.
Stellen Sie sicher, dass bei jedem Dateipfad, den Sie in den Eigenschaften definieren, die Namenskonventionen des Betriebssystems für das Zielsystem genau beachtet werden. Wenn Sie zum Beispiel ein Linux-System von einem Windows-Client implementieren und Sie ROOTDIR angegeben haben, überprüfen Sie, dass dessen Wert ein gültiger Pfad für Linux ist.
Alle Pfade müssen absolut sein. Unter Windows ist zum Beispiel "C:\myRootDir" ein entsprechender Pfad und unter Linux ist "/home/user/myRootDir" ein entsprechender Pfad. Alle Pfade müssen absolut und nicht relativ sein.