![]() |
T-Plan Robot Enterprise 4.4.7 Doc Collection |
29/01/19 |
Build No. 4.4.7-20190129.1
Item |
Minimum |
Recommended |
Processor (CPU) |
Not set1 |
2GHz+ |
Memory (RAM) |
128MB (required
by Java)2 |
512MB+ |
Free Disk Space |
50MB for Robot
alone. Add approx. 50/100MB for the Java JRE/JDK
installation. |
200MB+ |
Operating System |
Any system supported by Oracle's
Java 8+ or compatible. |
64-bit OS preferred for memory intensive2
deployments. |
Web Browser |
Internet Explorer 6 and
higher Mozilla Firefox 3 and higher Google Chrome 1 and higher Opera 9 and higher Apple Safari 3 and higher (limited support due to missing XPath support) Any other web browser supporting XML, XSLT and XPath |
|
Installed Software |
1. Windows Installer 3.1 (WindowsInstaller-KB893803-v2-x86.exe)
- only for users installing the Robot's .exe
distribution (see Installation) 2. Java (JRE or JDK) version 6 or higher (see the Java Requirements and JDK Installation & Configuration chapters below) 3. Tesseract OCR (optional) if text recognition on the SUT screen is required (details). |
Latest Java
SE (JDK) from Oracle Inc. supported by Robot (see table) |
java.lang.OutOfMemoryError
visible in the stack trace, raise the heap size
allocated to the Java Virtual Machine (JVM) through the -Xmx
option. The instructions are available in the Memory
Adjustments chapter.Robot Version |
Supported Java
Versions |
Note |
5.x |
Java 8, 9, 10, 11, 12 | Dynamic loading of plugins is not possible with Java 9+. The plugin JAR files must be put onto the class path or copied to the install folder. See the Startup chapter. |
4.4.4+ | Java 8, 9, 10, 11 |
Dynamic loading of plugins is not possible with Java 9+. The plugin JAR files must be put onto the class path or copied to the install folder. See the Startup chapter. |
4.4 - 4.4.3 | Java 6, 7, 8, 9 |
Dynamic loading of plugins is
not possible with Java 9+. The plugin JAR files must be put
onto the class path or copied to the install folder. See the
Startup chapter. Some features such as for example the iOS Mirror connection require Java 7+. |
3.x-4.4.2 | Java 6, 7, 8 | Some features such as for example the iOS Mirror connection require Java 7+. |
java -version
javac
compiler manually.java
or
javaw
binary (all product versions). This method
overrides the first alternative if both are set up.<JDK_dir>\bin
path to the system path. This will make your OS use the JDK as a
default interpret for all Java applications.javac
. The
command must be found and print out the supported parameters."java"
in the T-Plan Robot Enterprise start command with absolute path to the
JDK's "java" binary. For example, on MS Windows edit the robot.bat
file, replace "java"
with "
C:\Program
Files\Java\jdk1.8.0_<version>\bin\java"
and
use the batch file to start T-Plan Robot Enterprise. For information on how
to modify the other start up methods (Windows menu, starting
from T-Plan Professional) see the Startup
and Integration with T-Plan Professional
chapters. Connection Type |
Description |
VNC Server |
Testing over the RFB (VNC) 3.3, 3.7 or 3.8 protocol. |
Static Image |
Testing of image files or systems with image file output. |
Android Over ADB |
Testing of Android devices
connected through the USB cable over the Android Debug
Bridge (ADB) tool. |
Local Desktop |
Testing of applications and system components displayed on the local desktop. |
iOS Mirror |
Testing of iOS devices using a combination of AirPlay screen mirroring and the T-Plan or VNC server. |
iOS Over
Xcode |
Testing of iOS 9 devices from Mac OS X with
Xcode installed. |
RDP Server |
Testing over the RDP protocol. |
.exe
or a ZIP
file containing an .exe
file). This package can be
installed just on MS Windows and it will allow you to manage the
software as a standard Windows program. It also associates
Robot with the .tpr
test script file
extension. The installer installs the tool into the C:\Program
Files\T-Plan\Robot
directory by default..dmg
or a ZIP file containing a .dmg
file). This
package can be installed on Apple Mac OS X only. To install the
product on Mac OS drag the TPlanRobot
application to Applications
after the system opens the downloaded file.File
Name |
Description |
robot.jar | Java archive with compiled T-Plan Robot Enterprise classes. |
jh.jar | JavaHelp(TM) v1.1.3 library, distributed by Sun
Microsystems Inc. under Binary Code License (BCL). Used to
display Online Help (OLH) window in the GUI. When omitted
the OLH functionality falls back to the web browser. |
activation.jar |
JavaBeans(TM) Activation Framework (JAF) v1.1.1 library, distributed by Sun Microsystems Inc. under BCL. Required by the JavaMail library. Not used directly by the product. |
mail.jar |
JavaMail(TM) v1.4.1 library, distributed by Sun Microsystems Inc. under BCL. It provides E-mail infrastructure for the SendMail command/Java API method call. |
poi-3.6-20091214.jar | Repackaged Apache POI 3.7 libraries distributed under Apache License v2.0. The archive contains contents of the poi-ooxml, poi-ooxml-schemas, xmlbeans and dom4j libraries. The old library name of poi-3.6-20091214.jar is preserved for compatibility with v2.1 and 2.2. For information on the POI and its subcomponent licenses see the LICENSE file. The library provides connectivity to MS Excel files through the Excel command. |
javaparser.jar |
Java Parser 1.0.8 library distributed under GNU Lesser GPL (LGPL). To upgrade the library simply replace the file and either put it on the class path or keep the same name to allow T-Plan Robot Enterprise to load it dynamically. The source code of the library packaged with the product is available here. The source code is equivalent to release 1.0.8 and it was not modified. |
jna-3.5.1.jar platform-3.5.1.jar |
Java Native Access (JNA) 3.5.1 libraries distributed under GNU Lesser GPL (LGPL). To upgrade the library simply replace the file and put it on the class path. If the files are not put onto the class path Robot will search for any "jna- " and "platform-" prefixed JAR files and load them dynamically. The source code of the library packaged with the product is available here. The source code is equivalent to JNA release 3.5.1 and it was not modified. |
JTattoo.jar |
JTattoo Look And Feel
(JTattoo binary license). |
JNativeHook.jar |
JNativeHook 2.0.3 library distributed under GNU Lesser GPL (LGPL) v3. To upgrade the library simply replace the file and either put it on the class path or keep the same name to allow T-Plan Robot Enterprise to load it dynamically. The source code of the library packaged with the product is available here. The source code is equivalent to release 2.0.3 and it was not modified. |
cron4j-2.2.5.jar |
Cron4J 2.2.5 library distributed under GNU Lesser GPL (LGPL). To upgrade the library simply replace the file and either put it on the class path or keep the same name to allow T-Plan Robot Enterprise to load it dynamically. The source code of the library packaged with the product is available here. The source code is equivalent to release 2.2.5 and it was not modified. |
gson-2.5.jar |
GSON 2.5 (Google JSON parser) distributed under Apache License v2.0. |
robot.sh | T-Plan Robot Enterprise start script for Unix/Linux. See the 6. Startup chapter for
more information. |
robot.bat | T-Plan Robot Enterprise start script for Windows. See the 6. Startup chapter for more information. |
imgcompare.sh |
Script for offline CLI image comparisons for Unix/Linux. See the 6. Startup chapter for more information. |
imgcompare.bat | Script for offline CLI image comparisons for Windows. See the 6. Startup chapter for more information. |
install.html | A copy of this T-Plan Robot Enterprise 4.4.7 Release Notes document. |
LICENSE.txt | License text. Please read carefully before you start using T-Plan Robot Enterprise. |
crc32.properties |
CRC32 check sums of all
installed files for the Update & Upgrade feature. |
help/ |
Directory with help topics
and Java API documentation. |
plugins/ |
Default drop-in folder for
plugins. It may or may not exist. |
License server is the default option starting with release 4.3. You must install and run a licensing server. If you are about to switch from a file based license key to the license server please read the instructions below.
- If you install the server on the same machine as Robot and use the default port of 8880 you don't have to configure anything.
- If the server is on another machine and/or using a custom port you must tell Robot where to find it. There are 3 options to pass the server address (server name and optional port) to Robot:
- Through the Tools->License Key Manager window in the GUI. This will store the server address under the
ls.address
key to the user configuration file.
- Specify the address through the --licenseserver CLI option.
- Solutions integrating Robot into 3rd party Java frameworks and/or applications may specify the license key path or a list of semicolon separated paths through the
robot.licenseServer
system property (since v4.4). It must be done before the ApplicationSupport class gets instantiated. This option is available since v4.4. Example:System.setProperty("robot.licenseServer
", "mymachine:8880");
...
ApplicationSupport robot = new ApplicationSupport();
*.tlic
)
are removed from the Robot installation directory.--licensekey
CLI option or populate the robot
.licenseKey
system property from your custom Java code.File based keys are maintained for backward compatibility with Robot v4.2 and older. They are provided for new contracts only where the server is not suitable. The key is an encrypted file with the.tlic
extension which contains details of your license, such as:When you purchase a T-Plan Robot Enterprise license, you should also receive one or more license keys. For security purposes the file may be delivered to you separately from the product, for example by an E-mail from a T-Plan Ltd sales representative. There are several options to install it:
- Expiration date. The program is by default licensed for one year (annual license) or on a perpetual basis with time limited support. Trial licenses are available on request from the T-Plan Ltd Sales.
- Number of seats (users) and licensed SUT connections. The product is licensed on a "per seat" basis. For details see the Chapter 2 of the LICENSE.txt file located in the installation folder.
File based keys keys may be freely combined. It means that you may have any number of license keys installed at a moment regardless of whether the files are in the installation folder or outside of it. The number of connections will be then equal to the sum of licensed connections of all installed valid licenses. This system allows you to purchase additional licenses and plug them into the product easily when you need to scale up.
- Save the key file to the T-Plan Robot Enterprise installation directory (where the
robot.jar
file is located). As the tool checks the folder for any license key files on startup, it will be picked up right away. There might be any number of license files in the installation directory.
- Alternatively save the key file to a custom location on your hard drive and take advantage of the License Key Manager to register it. To open the Manager start T-Plan Robot Enterprise in the GUI mode (with no custom CLI arguments). If you have no valid license installed, the tool will display a "No license" error message and it allows you to start the License Key Manager. If you already have a valid license installed, you may start the window through the Tools->License Key Manager menu item. Then add the file to the list of registered license keys. Be aware that the list of such files (meaning keys outside of the installation directory) is saved to a list in the user preferences and it may get lost during migration unless you copy the user configuration file as well. Any change in license key configuration requires product restart.
- Specify the key path(s) through the --licensekey CLI option.
- Solutions integrating Robot into 3rd party Java frameworks and/or applications may specify the license key path or a list of semicolon separated paths through the
robot.licenseKey
system property. It must be done before the ApplicationSupport class gets instantiated. This option is available from v4.0.3. Example:System.setProperty("robot.licenseKey
", "C:\\MyData\\robot.tlic");
...
ApplicationSupport robot = new ApplicationSupport();
cd "C:\Program
Files\T-Plan\Robot\robot"
robot
Windows
64-bit:cd "C:\Program Files
(x86)\T-Plan\Robot\robot"
robot
"sudo robot.sh"
)robot.sh
or robot.bat
),
make a back up and restore them after the update process. You
don't need to back up test scripts, template images or
configuration files because they will not be affected.robot.jar
file:C:\Program
Files\T-Plan\Robot
(or to the custom directory you
selected at the install time)./Applications/TPlanRobot.app/Contents/Resources/Java
robot.bat
script
or through a direct Java command as is described in the Startup chapter./Applications/TPlanRobot.app
folder. You may also create a standalone cross-platform
Robot instance by copying the product files from the /Applications/TPlanRobot.app/Contents/Resources/Java
folder to another location. Such a product may be then started
through the robot.sh
script or through a direct Java
command as is described in the Startup
chapter.<home>/.tplanrobot/tplanrobot.cfg
and the legacy VNCRobot's one <home>/config.properties
.
This step resolves eventual incompatibility of user preference
parameters.<home>/.tplanrobot/PluginMap.xml
.
This step resolves eventual downgrade errors caused by missing
plugin classes.MS Windows:
- If you installed Robot using the Windows Installer start T-Plan Robot Enterprise from the Windows Start menu (it will run the
C:\Program Files\T-Plan\Robot\robot.bat
file)- If you are using the cross-platform build (unzip & run) switch to the install folder and run the
robot.bat
file- Should you need to customize the Robot start command edit the
robot.bat
file and update the twojava
calls in there. Alternatively run thejava
command directly from the command prompt (see below). This may be required for example to enable the Android Over ADB connection on Java 9+.
Mac OS X:
For help on CLI commands run
- If you installed Robot for Mac (.dmg) run it from the Mac OS X menu. Alternatively run the
/Applications/TPlanRobot.app/Contents/Java
/robot.sh
file.
- If you are using the cross-platform build (unzip & run) switch to the install folder and run the
robot.sh
file.- Should you need to customize the Robot start command edit the
robot.sh
file and use it to start the tool. Alternatively run thejava
command directly from the command prompt (see below).Linux/Unix:
- Switch to the cross-platform build folder and run the
robot.sh
file.
robot.sh -h
, resp. robot.bat
--help
. For a complete reference see the T-Plan Robot Enterprise 4.4.7 CLI
Reference. If the tool fails to start, review the Troubleshooting chapter at the end of
this document. The wrapper scripts actually just start Java with
proper options. If you need to customize the T-Plan Robot Enterprise start
command use the following syntax:
Linux/Unix: |
java
-Xmx512m -classpath
: cron4j-2.2.5.jar:gson-2.5.jar:jna-3.5.1.jar:platform-3.5.1.jar:JNativeHook.jar
com.tplan.robot.ApplicationSupport <T-Plan Robot Enterprise CLI
parameters> |
MS Windows: |
java
-Xmx512m -classpath
poi-3.6-20091214.jar ; cron4j-2.2.5.jar;gson-2.5.jar;jna-3.5.1.jar;platform-3.5.1.jar;JNativeHook.jar
com.tplan.robot.ApplicationSupport
<T-Plan Robot Enterprise CLI parameters> |
"java -jar
robot.jar
"
or through double clicking onto
the robot.jar
file. It fails to populate class path of
the Java compiler. The tool may refuse to compile or even run the
Java source code (such as Java test scripts and Java code blocks
embedded in regular scripts).
NOTE:
As Java 9 introduced new security restrictions it is no
longer possible to load 3rd party Java libraries (JARs) on
the fly. All these files must be listed after the -classpath
option of the above command. Pay attention to this
requirement especially if you are upgrading from an older
Robot release and you rely on the custom CLI
start commands. This limitation does not apply to script and feature
plugins delivered as JAR files by T-Plan Ltd. |
-n
or --nodisplay
option. Use this way for automated execution of test scripts.
Other parameters like -r/--run
must be supplied. imgcompare.sh
(for Unix/Linux) or imgcompare.bat
(for Windows) or
invoke Java directly as follows:Linux/Unix: | java -classpath robot.jar; poi-3.6-20091214.jar
com.tplan.robot.ImageComparison <Image
comparison CLI parameters>
|
MS Windows: | java -classpath robot.jar; poi-3.6-20091214.jar
com.tplan.robot.ImageComparison
<Image comparison CLI parameters>
|
C:\Documents and Settings\<user>\Local
Settings\Application
Data\T-Plan\Extensions\RobotExtn\RobotExtn.ini
C:\Users\<user>\AppData\Local\
T-Plan\Extensions\RobotExtn\RobotExtn.ini
Run=java -Xmx256m -cp "%1\robot.jar;%1\jh.jar;
%1\activation.jar;
%1\mail.jar;
%1\poi-3.6-20091214.jar
" com.tplan.robot.ApplicationSupport
java.lang.OutOfMemoryError
or java.lang.StackOverflowError
stack trace seen in the console window (command prompt on Windows).
The first aid is to raise the
amount of memory assigned to the Robot
process:
java
start
command based on your start up preference:robot.sh
, or robot.bat
scripts to start Robot, edit the script and
modify the startup java
command in there. java.lang.OutOfMemoryError
you need to raise the heap size. The -Xmx
parameter after the java
(or javaw
)
command indicates how much heap memory is your Java Virtual
Machine allowed to use at a maximum. Raise this number to a
higher value. For example, -Xmx512m
allows the JVM
heap to grow up to 512MB if needed. This limit doesn't mean that
the memory is allocated immediately.java.lang.StackOverflowError
raise the stack size through the -Xss
parameter.
The syntax is the same as the -Xmx
one. As the defauIt
stack size is typically between 384k and 512k for x86
systems and 1MB for x64 ones it is usually sufficient to
increase the stack memory to 1MB on x86 (-Xss1m
) or
to 2MB on x64 (-Xss2m
).-Xmx
switch, the behavior is further
subject to the system architecture:-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=./java_pid<pid>.hprof
switches after the java
(javaw
)
command to make the process create the dump automatically. See the Oracle
documentation for details.Parameter Name (Location) |
Description |
Encodings (GUI:Preferences->RFB (VNC) 3.x Client) |
Encodings specify how the image data transferred between
Robot and VNC server is encoded. They are
specified as an ordered list where the first (topmost) item
has the highest priority. Each encoding uses a different
algorithm of encoding the image data to trade off between
the volume of data transferred over the network (better
compression = less data) and the local CPU resources needed
to decode it.
|
Script editor behavior (GUI:
Preferences->Execution) |
The script editor in
Robot's GUI is by default configured to compile
any script changes after a preset amount of idle time. This
may lead to slower GUI performance, especially where long
scripts are being edited and/or there are multiple open
editors and/or one or more scripts are Java source code or
call Java source code through the technology of Java code blocks.
Consider setting off the auto compilation and compile
manually only when needed through the editor context menu or
Script->Compile
in the main application menu. |
Connection pooling
(Java API) |
Connection pooling allows to reuse server connections
which avoids the overhad of reconnection. This mechanism can
be applied just from the Java API. See the RemoteDesktopClientFactory
class documentation for details. |
There's no Java installed on your
machine or path to the Java executable is not included in your OS
path. Read chapter Client System Requirements
of this document.
T-Plan Robot Enterprise fails to start with a message "Exception in thread "main" java.lang.NoClassDefFoundError: com/tplan/robot/ApplicationSupport"
This indicates that the T-Plan Robot Enterprise
JAR (Java ARchive) file robot.jar
is not correctly
included in the Java class path.
robot.jar
file is there and that
you have permission to read it. robot.sh
or robot.bat
from this directory. Alternatively modify the java
command to include this library in the -classpath
argument. T-Plan Robot Enterprise starts but prints out a message "JavaHelp libraries not found. Please make sure that file jh.jar is included in the Java class path."
This indicates that the JavaHelp JAR
file jh.jar
is not correctly included in the Java
class path. The tool will run but you will not have access to the
online help. Some links which open in a web browser may however
work fine. As all the help documents are available online at http://www.t-plan.com/robot/docs, you may switch to the
online documentation and ignore this error. To resolve it:
jh.jar
file is there and that you
have permission to read it. robot.sh
or robot.bat
from this directory. Alternatively modify the java
command to include this library in the -classpath
argument. T-Plan Robot Enterprise fails to start with a NoClassDefNotFoundError, NoSuchFieldError or any other severe Java error
Unless one of the cases listed above
applies, these problems are typically experienced when you use
Java of version lower than the required one. See the Client System Requirements
chapter for required Java version and run java -version
to find out which version you have installed.
Either the robot.sh
or robot.bat
script fails to pass some CLI options
T-Plan Robot Enterprise
crashes with java.lang.OutOfMemoryError