W platformie TPTP wykorzystywane są tylko właściwości CLASSPATH i ROOTDIR.
Pliki, które są wdrażane w czasie wykonywania, są następujące:
1. Wszystko w ścieżce klasy projektu testu z wyjątkiem następujących typów plików: .java, .execution, .testsuite, .deploy, .location, .artifact.
2. Wszystkie zasoby testu powiązane z artefaktem wykorzystywanym do wykonania testu
3. Właściwość CLASSPATH właściwości ogólnych artefaktu używanego do wykonania testu.
Właściwość ROOTDIR jest obliczana zgodnie z następującą procedurą:
Krok 1 |
Platforma TPTP najpierw sprawdza właściwość położenia ROOTDIR (jeśli jest ona określona) na zdalnym komputerze; jeśli właściwość ta zostanie znaleziona, jej wartość stanowi dane wyjściowe tego kroku.
Jeśli właściwość położenia ROOTDIR nie jest określona lub jest, ale nie ma jej na zdalnym komputerze, jest ona uzyskiwana przez platformę TPTP przy użyciu katalogu tymczasowego znajdującego się w środowisku zdalnego komputera; wyszukiwane są katalogi LOCAL_AGENT_TEMP_DIR, TEMP i TMP, w tej kolejności, i ten który zostanie znaleziony pierwszy, stanowi dane wyjściowe tego kroku. |
Krok 2 |
Platforma TPTP szuka właściwości położenia USR_NAME na komputerze lokalnym. Jeśli tej właściwości nie ma, właściwość user.name jest uzyskiwana ze środowiska Java (System.getProperty("user.name")). |
Krok 3 |
Dane wyjściowe z kroków 1 i 2 są konkatenowane i używane jako właściwość ROOTDIR. |
Aby skonfigurować pliki JAR, które znajdą się w katalogach podrzędnych katalogu określonego przez właściwość ROOTDIR i będą w nich wdrażane, skonfiguruj parametr CLASSPATH dla artefaktu; aby skonfigurować pliki JAR, których nie trzeba wdrażać (np. dlatego, że są już na komputerze lub w położeniu, gdzie mają być wdrożone), ale muszą być uwzględnione w ścieżce klasy, skonfiguruj parametr CLASSPATH w swoim położeniu. Różnica między właściwością CLASSPATH artefaktu i położenia polega na tym, czy pliki JAR mają być wdrażane i uwzględniane, czy tylko uwzględniane w położeniu wdrażania.
Niektóre biblioteki nie są wdrażane niezależnie od tego, czy są wymienione we właściwości ścieżki klasy artefaktu. Są one następujące:
Klienty środowiska roboczego w wersji wcześniejszej niż TPTP 3.3 nie mogą używać komponentów Agent Controller z platformy TPTP 3.3 lub nowszej (muszą nadal używać starszych komponentów Agent Controller sprzed wersji TPTP 3.3). Klienty platformy TPTP 3.3 i nowszej mogą używać zarówno starych, jak i nowych komponentów Agent Controller. Podsumowując, obsługa klientów/serwerów na platformie TPTP wygląda obecnie następująco:
Klienty >= TPTP 3.3 i serwer >= TPTP 3.3 [stosować nowy protokół przesyłania plików, jeśli komponent Agent Controller nie jest zabezpieczony, stary protokół przesyłania plików, jeśli jest zabezpieczony]
Klienty >= TPTP 3.3 i serwer < TPTP 3.3 [stosować stary protokół przesyłania plików dla zabezpieczonych i niezabezpieczonych komponentów Agent Controller]
Klienty < TPTP 3.3 i serwer >= TPTP 3.3 [ta kombinacja nie działa, ponieważ starsze klienty nie rozumieją nowego protokołu przesyłania plików serwera]
Klienty < TPTP 3.3 i serwer < TPTP 3.3 [stary protokół przesyłania plików jest stosowany dla zabezpieczonych i niezabezpieczonych komponentów Agent Controller]
W wersjach TPTP 3.3 i TPTP 4.0 wprowadzono zmiany w usłudze przesyłania plików (aby zwiększyć szybkość wdrażania), które spowodowały, że jest w nich używany nowy protokół przesyłania plików; wszystkie klienty sprzed wersji TPTP 3.3 nie znają tego protokołu, co uniemożliwia wdrożenie testu. Nowe klienty znają stary i nowy protokół, co umożliwia wdrożenie testu.
Wszystkie ścieżki plików ustawiane we właściwościach muszą dokładnie pasować do konwencji nazewnictwa obowiązujących w systemie operacyjnym komputera docelowego. Jeśli np. wdrażanie odbywa się na komputerze z systemem Linux z komputera z systemem Windows i została określona właściwość np. ROOTDIR, należy sprawdzić, czy jej wartość jest prawidłową ścieżką w systemie Linux.
Wszystkie ścieżki muszą być bezwzględne. Na przykład w systemie Windows ścieżka "C:\myRootDir" jest prawidłowa, a w systemie Linux ścieżka "/home/user/myRootDir" jest prawidłowa - wszystkie ścieżki muszą być bezwzględne, a nie względne.