В TPTP используются только свойства CLASSPATH и ROOTDIR.
Во время выполнения развертываются следующие файлы:
1. Все файлы в каталогах классов проекта теста, за исключением файлов со следующими расширениями: .java, .execution, .testsuite, .deploy, .location, .artifact.
2. Все ресурсы теста, связанные с используемым артефактом.
3. Переменная CLASSPATH, указанная на странице общих параметров используемого артефакта.
Переменная ROOTDIR вычисляется с помощью следующей процедуры:
Шаг 1 |
Сначала TPTP проверяет, задана ли переменная ROOTDIR в удаленной системе. Если переменная задана и указанный в ней каталог существует, берется значение этой переменной.
Если переменная ROOTDIR не задана или если указанный в ней каталог не существует в удаленной системе, TPTP проверяет, заданы ли переменные LOCAL_AGENT_TEMP_DIR, TEMP и TMP, и если хотя бы одна из них задана, использует соответствующий временный каталог. Переменные проверяются в том порядке, в котором они перечислены выше. |
Шаг 2 |
TPTP проверяет, задана ли переменная среды USR_NAME в локальной системе. Если она не задана, используется значение свойства user.name Java (System.getProperty("user.name")). |
Шаг 3 |
TPTP объединяет значения, полученные на шагах 1 и 2, и результат используется в качестве значения переменной ROOTDIR. |
Путь к файлам JAR, которые нужно развернуть в подкаталогах ROOTDIR, следует указывать в переменной CLASSPATH артефакта теста. Путь к файлам JAR, которые не нужно развертывать (например, потому что они уже существуют в целевой системе), но которые при этом должны быть доступны через переменную CLASSPATH, нужно указать в переменной CLASSPATH расположения. Таким образом, разница между применением переменных CLASSPATH артефакта и расположения заключается в том, что в первом случае файл JAR развертывается (ссылка на файл в целевой системе создается в обоих случаях).
Некоторые библиотеки не развертываются, даже если они указаны в переменной CLASSPATH артефакта, а именно:
Клиенты рабочей среды более ранних версий, чем TPTP 3.3, несовместимы с контроллерами агента TPTP 3.3 и последующих версий. Они могут пользоваться только старыми версиями контроллеров агента (до TPTP 3.3). Клиенты TPTP 3.3 и последующих версий могут пользоваться как старыми, так и новыми контроллерами. В целом в настоящий момент поддержка клиентов и серверов в TPTP выглядит следующим образом:
клиенты >= TPTP 3.3 и сервер >= TPTP 3.3 [применяется новый протокол передачи файлов с незащищенными контроллерами и старый протокол передачи файлов с защищенными контроллерами]
клиенты >= TPTP 3.3 и сервер < TPTP 3.3 [старый протокол передачи файлов как с незащищенными, так и с защищенными контроллерами агента]
Клиенты < TPTP 3.3 и сервер >= TPTP 3.3 [это сочетание не работает, поскольку старые клиенты не поддерживают протокол передачи файлов нового сервера]
Клиенты < TPTP 3.3 и сервер < TPTP 3.3 [применяется старый протокол передачи файлов как с незащищенными, так и с защищенными контроллерами агента]
В TPTP 3.3 и TPTP 4.0 для повышения скорости развертывания были внесены изменения в службу передачи файлов. В результате эти серверы переведены на новый протокол, который не поддерживают клиенты TPTP более ранних версий, чем 3.3. Новые клиенты поддерживают как новый, так и старый протоколы, поэтому никаких трудностей с развертыванием не будет.
Убедитесь в том, что все имена файлов допустимы в операционной системе целевого компьютера. Например, при развертывании теста в системе Linux с клиента Windows нужно проверить, допустимо ли значение переменной ROOTDIR (если она передается).
Все пути должны быть абсолютными. Например, в Windows нужно указывать пути вида "C:\myRootDir", а в Linux - пути вида "/home/user/myRootDir".