# Installation Manual

# Chapter 1. System requirements

## 1.1. Hardware requirements

Since the ITE is Java-based, it is theoretically independent of any specific hardware platform, and can run on any hardware setup for which a Java implementation exists. However, certain minimum resource requirements should be met, as stated below.

Minimal setup

- A 1 Ghz processor

- 1GB RAM

- 600MB free hard drive space

Recommended setup

- A 2 Ghz processor

- 2GB+ random access memory

## 1.2. Software requirements

### 1.2.1. Supported operating systems

The following operating systems are supported:

- Microsoft Windows (tested on Windows 7 and 8), 32- and 64-bit

- Linux (tested on Centos with GTK), 32- and 64-bit

- Mac OSX (not for SWT AUTs), 64-bit

Although the software may run on other systems, we cannot guarantee that the components will run properly on them; nor can we support an installation on such systems.

### 1.2.2. Supported Java environments

Installer:

  Java 7

Client component (Integrated Test Environment, ITE):

  Java 7 minimum

Server component (AUT Agent):

  Java 7 minimum

AUT:

  Java 1.5 minimum

Java 7 is provided in the installation for Linux and Windows.

### 1.2.3. Database requirements

The ITE supports Oracle as a multi-user database. There is an embedded database which is installed as well, but we only recommend using this for demo purposes.

Other databases may work, as supported by Eclipse Link, but we can offer neither guarantee of their proper use nor technical support.

### 1.2.4. Firewalls

The ITE and AUT Agent have to be able to perform interprocess communication in order to run tests. No information is sent to external sources during this process.

The ports required are:

1. From the ITE to the AUT Agent: this port is defined in the preferences.

2. From the AUT to the ITE: this port is dynamically chosen, and cannot currently be defined. Therefore, any ports available on your test machine must also be open on the machine from which the test is being run.

If opening all ports in this way is not an option, we recommend using the test executor on the test machine to run the tests, so that all communication is done locally.

## 1.3. AUT Agent requirements

The AUT Agent requires a system with a TCP/IP-capable network. To run the server, the system should have at least 1 GB free random access memory. Additional requirements for the AUT Agent depend on the application under test (AUT).

## 1.4. Java policies and security managers

If the AUT uses a security manager (or, in some cases, a Java Policy), please be aware that the service component requires permission to create and use ClassLoader instances. Most policies will not permit this action for security reasons. The service component uses the ClassLoader to separate the program code used to inspect the AUT from the AUT itself as much as possible.

To grant the necessary permission, please use the following policy snippet (please use a personal installation directory instead of the installation directory).

    grant {
      permission java.io.FilePermission "<<ALL FILES>>",
                 "read, write, delete, execute";
      permission java.lang.RuntimePermission
                 "getClassLoader";
      permission java.lang.RuntimePermission
                 "createClassLoader";
      permission java.lang.RuntimePermission
                 "setContextClassLoader";
      permission java.lang.RuntimePermission
                 "accessDeclaredMembers";
      permission java.lang.RuntimePermission
                 "modifyThreadGroup";
      permission java.lang.RuntimePermission "exitVM";
      permission java.lang.reflect.ReflectPermission
                 "suppressAccessChecks";
      permission java.util.logging.LoggingPermission
                 "control";
      permission java.util.PropertyPermission "*",
                 "read, write";
      permission java.net.SocketPermission "*",
                 "accept, connect, listen, resolve";
      permission java.awt.AWTPermission
                 "listenToAllAWTEvents";
      permission java.awt.AWTPermission
                 "showWindowWithoutWarningBanner";
      permission java.awt.AWTPermission "createRobot";
      permission java.awt.AWTPermission "accessClipboard";
      permission java.awt.AWTPermission "accessEventQueue";
      access : access denied (java.lang.RuntimePermission accessClassInPackage.sun.reflect)
    };

If these permissions are not granted, a SecurityException will be thrown when the AUT is started. This means that the AUT cannot be tested.

# Chapter 2. Migrating to new versions

Existing users who wish to update to a new version should follow the steps described online to ensure a problem-free migration:
http://testing.bredex.de/migration-information.html

# Chapter 3. Installation

We have a graphical installer to make installation as straightforward as possible.

You don’t need administrative privileges to install the components, but the folder where the software will be installed must be writable and allow program execution.

## 3.1. Known issue with an environment variable

There is a known problem with an environment variable which is installed with certain products, including other test tools, and may not be uninstalled when these products are uninstalled.

The variable is called ”_JAVA_OPTION” and causes problems for the ITE and possibly also for other Java-based software.

To see if this variable is installed on your computer, locate your list of environment variables.

If the ”_JAVA_OPTION” variable is present, and you have uninstalled the program which used it, then you can simply remove the variable.

## 3.2. Using the graphical installer

To install the standalone:

1. Browse to the place where you saved the installer file and start the installer.

2. You must accept the license agreement to proceed with the installation. The license agreement is also available as a .txt and a PDF file in the installation directory.

3. Follow the steps in the installer to install the components you require at the places you require. The available components are:

   The ITE:

     This includes the ITE (Integrated Test Environment, the graphical client for writing tests), and the testexec and dbtool command line tools for executing tests from the command line, and importing / exporting / deleting Projects from the command line.

   The AUT Agent:

     This includes the server component, required for starting AUTs and running tests. It also contains the autrun command line tool for starting AUTs without using an AUT configuration.

   The documentation:

     HTML documentation

# Chapter 4. Database configuration

The ITE uses a database to store Projects. The necessary tables for the database are created automatically. For this reason, it is important to use a clean database with no other tables in it.

You can configure the type of database to use in the ITE via the preferences. The following sections give some advice on configuring the database setup for optimum use.

## 4.1. Using the embedded database

The embedded database is the default database. If you do not specify a different database, a connection will automatically be made to the embedded database.

The embedded database is a H2 file-based database. It is saved to:
home/.jubula/database

| We recommend only using the embedded database for demo or tryout purposes.

## 4.2. Using an Oracle database

The ITE is tested with Oracle and we recommend using an Oracle or Oracle Express database for working with it.

### 4.2.1. Some tips for working with Oracle Express

Problems creating the database scheme: DBA rights

There is a known issue with Oracle Express when creating database schemes with DBA-rights. In some cases, the creation of the database scheme may fail. To avoid this problem, do not use DBA-rights when creating the database scheme.

Increasing sessions and processes

Oracle Express uses a relatively small amount of sessions. Insufficient sessions can lead to problems when working with the ITE. To combat this problem, the sessions and processes in Oracle Express should be set higher.

We recommend 100 as a suitable amount. The sql script to do this looks like this:

    sqlpls / nolog
    connect / as sysdba
    alter system set sessions=100 scope=spfile;
    alter system set processes=100 scope=spfile;
    quit

You must run the script as an administrator and restart the database once the script has run.

UTF-16 support
If you want to test AUTs which run in languages such as Japanese, you will need the universal edition of Oracle Ex- press, which supports UTF-16 character encoding. The ISO- 8859 edition of Oracle Express does not support Japanese (and similar) characters.

User roles

When creating users for the database, bear in mind that each user must have the roles connect and resource to be able to work with the database.

## 4.3. Using a MySQL database

Users working with a MySQL database may want to increase the maximum allowed packet size to avoid problems during the communication of large amounts of information (more than one MegaByte) between the AUT Agent and the ITE.

To change the default packet value, you must:

1. Log into the MySQL command line client.

2. Enter the following into the console:
   SET GLOBAL max\_allowed\_packet=33554432
   This sets a value of 32 MegaBytes (1048576 * 32 = 33554432).

3. Check that the value has been successfully set using:
   SHOW VARIABLES

4. Restart the ITE for the changes to take place.

## 4.4. Using a PostgreSQL database

Users working with a PostgreSQL database that is version 9.0 or higher should be aware that the default format from version 9.0 for bytea data types is hex. This results in screenshots in the database not being able to be displayed.

The default behavior can be changed to escape in postgresql.conf or by executing a command to set the default behavior on a per database basis.

# Chapter 5. Configuring as an Eclipse application for shared environments

As the ITE is an Eclipse application, it can be configured just like any other Eclipse application can – including setups for multi users.

If multiple users should have access to e.g. extensions, then we recommend using a shared configuration area.

If you are working with Jubula for multiple projects that use different AUTs, once you have written an extension for a specific AUT, you should ensure that you are using your own installation of the ITE for this AUT. This is to avoid problems with multiple extensions for different AUTs in one ITE.

Further information on different configurations for Eclipse applications can be found at: http://help.eclipse.org/luna/topic/org.eclipse.platform.doc.isv/reference/misc/multi_user_installs.html?cp=2_1_3_7

# Chapter 6. Deinstallation

1. In Unix, start ./uninstall.

2. In Windows, select uninstall from the start menu.

3. A dialog box will appear to confirm this choice.

4. If you click yes, you will see a dialog which will remind you to export your Projects from the current database, and to backup any extensions of configurations you have used. If you are uninstalling as part of the migration process, please refer to the migration information (Chapter 2, Migrating to new versions) before uninstalling!

5. Select the options you have completed and then click ”Yes” again to uninstall the program.

6. Once the program has been uninstalled, you will see a message to confirm this.