Linux Installation

This section describes how to install the OpenText Functional Testing Lab server on a Linux machine.

This section is not relevant for OpenText Core SDP and OpenText Core Functional Testing Lab.

Before you start

Before installing or upgrading OpenText Functional Testing Lab, make sure that the following prerequisites are met.

Prerequisite Details
Server requirements Check that your server machine meets the requirements specified in the Support matrix.
Permissions

Root permissions are required.

Ubuntu: Installation requires sudo permissions.

Server accessibility The host name of the server machine is accessible. Check this by running the following command:
ping -c 1 "hostname"
iOS devices If you are going to connect iOS devices to the server machine using a USB cable, make sure that IPv6 is enabled.

New installation only

  • If Nginx is already installed on the server machine, remove it before installing OpenText Functional Testing Lab.
  • CentOS 7.6 -7.9:  X11 forwarding is required.

Back to top

Ubuntu considerations

There are a number of considerations to be taken into account when installing the server on Ubuntu.

Consideration Details
Version support Ubuntu version 22.04.3 (LTS), 24.04 and later.
Installation type

Ubuntu full installation and Ubuntu minimal installation are supported. Ubuntu Pro is not supported.

Editions Ubuntu Desktop and Ubuntu Server are supported.
CPU Only X86_64 architecture is supported.
Permissions Installation requires sudo permissions.

Back to top

Considerations for iOS 17 and later

If you plan to connect devices running on iOS 17 and later directly to the server machine, take into account the following considerations.

Consideration Details
Supported OS

Linux and macOS: iOS 17 and later is supported on the following:

  • Mac connector. For iOS 18, macOS 14 (Sonoma) or later is required.

  • Linux Ubuntu standalone or embedded connector.

  • RedHat Enterprise Linux standalone or embedded connector.

Windows: Only iOS version 17.4 and later is supported on the Windows connector.

Internet connection

To fetch a signature key from Apple from time to time, the connector machine must have access to the following:

  • http://gs.apple.com

OpenText recommends allowing access to all *.apple domains.

Other considerations for iOS 17 and later
  • Dev access is not supported.

  • Connecting AWS Device Farm and WeTest devices is not supported.

  • Force quit application is not supported.

Back to top

Use an external database

An embedded PostgreSQL database that is installed as part of the installation of the server. However, you can connect OpenText Functional Testing Lab to an existing external PostgreSQL database instead. This option lets your organization manage and utilize existing database resources.

Before installing or upgrading using an external database:

  1. Create a backup of the original database in the form of an hp4m.bin file. For details, see Export the embedded database.
  2. If you uninstalled the server without uninstalling the PostgreSQL database and are now using the database externally with a new installation, add the postgres user to the pg_hba.conf file. The file is located in <Postgres_installdir>/<postgres version>/data.
  3. postgres user listed in postgres configuration file
    You also need the original database encryption key. The external database needs the key to decrypt the data originally created by OpenText Functional Testing Lab.

  1. In a distributed environment where the external database is on a different machine from the OpenText Functional Testing Lab machine, make sure that the database server accepts connections from the OpenText Functional Testing Lab server, and that OpenText Functional Testing Lab is configured to connect to the correct database server machine:
    • In the postgresql.conf file stored under <Postgres installdir>/<postgres version>/data, search for listen_addresses = . This specifies the addresses on which the server listens for connections. Update the value with the OpenText Functional Testing Lab server IP or fully qualified domain name (FQDN). Setting the value as a wildcard “*” means the database server accepts connections from all addresses.
    • Locate the conf/hp4mExt-****.properties file in <OpenText Functional Testing Lab_ installdir>/server/conf. Check that the IP address/ FQDN is the correct address for the database server. If the FQDN is not accessible to the OpenText Functional Testing Lab server machine due to DNS issues, replace the FQDN with the IP address of the database machine.
  2. Restore the database. For details, see Migrate the exported data to an external database.
  3. If your PostgreSQL database exceeds 4 GB, OpenText recommends that you run the VACUUM FULL command to clean the database from deleted content and reduce its size. For details, see the PosgreSQL documentation.
  4. Optional: You can configure the PostgreSQL server to enable SSL connections.

    To enable secure connections to the database server:
    1. Generate SSL certificates.

      Create a server private key, a server certificate, and a certificate authority (CA) certificate.

    2. Move the certificates and keys to the appropriate Directory, for example /var/lib/postgresql/data. Ensure the files have the correct permissions.

    3. Edit the PostgreSQL configuration by opening the Postgresql.conf file and setting the following parameters:

      • ssl = on

      • ssl_cert_file = <server.crt>

      • ssl_key_file = <server.key>

        ssl_ca_file = <root.crt>

    4. Edit the pg_hba.conf file.

      Configure client authentication to use SSL by modifying host to hostssl.

    5. Restart the PostgreSQL server.

Important note for Postgres 13

Only the md5 method is supported for password authentication. After installing Postgres 13, perform the following:

  1. In the postgres configuration file <postgresql 13 path>/data/postgresql.conf, change the password encryption setting to md5:
    Password_encryption = md5

  2. In the pg_hba.conf file <postgresql 13 path>/data/pg_hba.conf, change all occurrences of scram-sha-256 to md5.

  3. Restart the postgresql-13 service.
  4. Reset the postgresql13 user password and restart.

Back to top

Install the server as a new installation

OpenText Functional Testing Lab can be installed as a full installation where no previous version is installed.

To install the server:

  1. Download the Linux server zip file.

  2. Log in with root permissions on your Linux machine.
  3. Copy the zip file to your Linux machine.
  4. Extract the server installation files:
    unzip <name of Linux server file>.zip –d <Target directory Name>
  5. Change directory to the Target directory:
    cd <Target directory Name>
  6. Run the installer:

    User with root permissions:
    ./<install_server-x64 file name>.bin

    The installation wizard displays the Introduction page. Read the contents and press Enter.

  7. The installation wizard displays the License Agreement. Press Enter to move through the pages and press Y to accept the agreement.
  8. Choose an installation folder. The default is /opt/FunctionalTestingLabForMobileAndWeb/.
  9. Configure the Linux OS user:
  10. To use an existing Linux OS user, select Y and provide the user name.

    Caution: Do not use the same name as the user with root permissions that is running this installation.

    If you select n, OpenText Functional Testing Lab creates a default Linux OS user named DL. Provide a new password for this user.

  11. Configure the server according to the following guidelines.

    Server configurationDetails
    FQDN or IP address

    The fully qualified domain name (FQDN) consists of the host name and the domain name. For example, myhost.opentext.com. The FQDN must begin with an English alphabetical character. FQDNs beginning with numbers are not supported.

    SSL connection

    Specify if the connection to the server should be over SSL only.

    The default is Y (secure connection only.)

    Note: If you choose the SSL option, all connections to the server from connectors and testing tool machines need to be secure. When configuring the OpenText Functional Testing Lab settings in connectors and tools, make sure that your selection matches that of the server.
    If you intend to use single-sign on using SAML 2.0, use the default Y.

    Caution: When you specify an SSL connection, the setup installs a self-signed certificate. Self-signed certificates are not optimal because there is no outside authority to verify the identity of the server. OpenText highly recommends that you install an organizational CA certificate after putting the server into production. For details, see Using SSL certificates issued by a Certification Authority.

    Server port

    By default, the installation is set to SSL on port 8443. The default non-SSL uses port 8080.

    Free port to be used internally Default: 8081
    Embedded connectorThis component is optional. Install the connector if you plan to connect devices directly to the OpenText Functional Testing Lab machine.
    Default userThe installation creates a default administrator user, admin@default.com, for accessing the OpenText Functional Testing Lab console. Specify a password for this user.
    Local folder for Temporary files

    Specify a local folder to be used for temporary files, or accept the default.

  12. Optional: Configure an external PostgreSQL database.

    An embedded PostgreSQL database is installed as part of the installation of the server. However, you can connect to an existing external database by selecting the option to use an external PostgreSQL database. Using an external database lets your organization utilize existing database resources and manage them with all their other systems. If you want to use the PostgreSQL version embedded with OpenText Functional Testing Lab, skip to the next step.

    Before installing with an external database, make sure that you have followed the steps described in Use an external database .

    When prompted with Do you want to use an external PostgreSQL database, type y.

    Make sure that the database machine is accessible, and provide the following for the connection.

    Database configurationDetails
    External database server

    The IP address or Fully Qualified Domain Name (FQDN) of the database machine.

    Database port The port of the external database machine.
    Database

    The name of the external database. You can use a database name such as hp4m. You can use a name that already exists in the target database server. If the database does not exist, it is created as part of OpenText Functional Testing Lab server installation provided that the user has sufficient permissions.

    Schema 

    You can use a schema name such as public. You can use a name that already exists in the specified database. If the schema does not exist, it is created as part of the server installation provided that the user has sufficient permissions.

    Note: If the database/schema was originally created by OpenText Functional Testing Lab (for example, if you uninstalled the server but not the PostgreSQL database), you are prompted to provide the encryption key when you proceed to the next screen. If the database/schema was not created by OpenText Functional Testing Lab, you do not need to provide an encryption key.

    User credentialsThe PostgreSQL database user name and password.
    SSL connection

    To enable the lab server to connect to the external database server using SSL, type y.

    Specify the location of the root certificate to enable an SSL connection to the external PostgreSQL database. The server must be able to access the certificate. Only files with a .crt extension are supported.

    This option requires configuring the external PostgresSQL database for SSL connections. To configure the database for SSL connections, see Use an external database

  13. When using the embedded version of the PostgreSQL database, configure PostgreSQL according to the following guidelines.
  14. Database configurationDetails
    Database server portDefault: 5432
    PostgreSQL superuser password

    When the PostgreSQL server is first installed, a superuser account postgres is created automatically. The superuser is needed to create the OpenText Functional Testing Lab database schema, and to add a user for administering the database. The superuser can override all access restrictions within the database, so it is best to carry out most operations using a non-superuser role.

    You need to provide a password for the superuser:

    • The password must be between 6-20 English characters long (any English alphabetical character, numbers, and the special characters "@" and "_" are permitted).
    • Contains at least one digit, one uppercase and one lowercase English character.
    PostgreSQL database administrator username

    The installation creates an additional user for administering the database. This user is not a superuser and has permissions to perform operations only on the OpenText Functional Testing Lab database.

    You need to provide a username for the database administrator (Default: DLadmin). The user name may consist of any lowercase English alphabetical characters, numbers, and the special character "_".

    Do not use postgres as the name for this user.

    PostgreSQL database administrator password

    You need to provide a password for the database administrator.

    The password must contain at least one digit, one uppercase and one lowercase English character, and must be between 6-20 English characters long. Any English alphabetical character, numbers, and the special characters "@" and "_" are permitted.

  15. Choose a folder to which applications uploaded to OpenText Functional Testing Lab are saved. The default is opt/FunctionalTestingLabForMobileAndWeb/storage. Read and write permissions to the folder are required both for the user running this installation, and for the Linux OS user defined at the start of the installation.

  16. Optional. Shared spaces (multi-tenancy) configuration.

    If required, enable the shared spaces feature.
    Important: This feature requires an Enterprise or Ultimate license. Disabling shared spaces is not supported and requires a clean installation. For details, see Shared spaces.
  17. Review the pre-installation summary and press Enter to continue with the installation.
  18. The installation takes several minutes to complete. When the installation is complete, a message is displayed that the server was installed and provides options to:
    • Allow collection of anonymous data for the improvement of the product. You can modify your selection for this option after installation, in the Administration Settings.
    • Start the service. By default, the server starts on port 8443 (HTTPS) or 8080 (HTTP), unless specified otherwise during the installation process.
  1. After installation, OpenText strongly recommends that you keep your files and data safe by incorporating the following for the application file storage folder and external database (if relevant):

    • Access monitoring

    • Limited access rights (only OpenText Functional Testing Lab user)

    • Regular backup

    • Encryption

    • Storage consumption monitoring. You can set a threshold for total file storage and monitor this with the File storage widget in the admin dashboard. For details, seeFile storage.

    OpenText also recommends that you:

    • Incorporate file system monitoring on the installation and temporary folders.
    • Back up the encrypted.properties file located in the <path to your OpenText Functional Testing Lab server installation/ Server /conf directory.

Back to top

Upgrade the server

OpenText Functional Testing Lab can be installed as an upgrade to an existing installation.

To ensure a smooth upgrade, see Best practices for upgrades.

Packaged apps: 
To run the app packager upgrader on iOS apps, you must have already set up your Mac machine as described in Automatic signing services

If you packaged apps manually from the command line before uploading them to OpenText Functional Testing Lab, the upgrader is no longer able to upgrade the apps. You need to repackage your apps using the latest version of the Packager Service (iOS) or the Android Enabler and then upload them to OpenText Functional Testing Lab.

To upgrade the server:

  1. Download the OpenText Functional Testing Lab Linux Server zip file.

  2. Log in as a user with root permissions on your Linux machine.
  3. Copy the zip file to /root, your home directory.
  4. Extract the server installation files:
    unzip <name of Linux server file>.zip –d <Target directory Name>
  5. Change directory to the Target directory:
    cd <Target directory Name>
  6. Run the installer:
    As a user with root permissions:
    ./<install_server-x64 file name>.bin

    The installation wizard displays the Introduction page. Read the contents and press Enter.
  7. Read the License Agreement, and select y to accept the terms and proceed with the installation.
  8. The installer detects that this is an upgrade and warns you accordingly. When you upgrade, all existing apps remain associated with their corresponding workspaces.
  9. Enter the PostgreSQL superuser password.
  10. Indicate if you want to perform an automatic backup of the database during the upgrade, so that the installation can perform a rollback in case of failure. This step may increase the duration of the upgrade.
  11. Indicate if you want to run the app packager upgrader automatically after the installation. Apps are upgraded asynchronously after upgrade of the OpenText Functional Testing Lab server, reducing downtime of the server. Users are able to access the upgraded server and continue using OpenText Functional Testing Lab while apps are being upgraded.

    If you choose not to run the upgrader automatically, you can run it manually after the upgrade. For details, see Upgrade packaged apps.

  12. You can also delete old uploads of applications. If you select y, specify the number of uploads to keep (Default: 30). When you select the option to delete old uploads and specify the number of uploads to keep, these settings are copied over to the General section in Administration > Settings. For details, see General settings.
  13. Select a folder to which applications uploaded to OpenText Functional Testing Lab are saved. Read and write permissions to the folder are required both for the user running this upgrade, and for the Linux OS user that was defined during the initial installation.
  14. If you choose to upgrade apps, you are prompted to select the operating systems of the apps you want to upgrade.
  15. Review the pre-installation summary and press Enter to continue with the installation.

  16. In the package upgrade summary section, click Enter to complete the server upgrade. Applications continue to be upgraded after the upgrade of the server.

    When the server starts, after installation, you can check the upgrade status of apps in the Apps menu in the lab console. To see the status of an app, click the More info icon on the app card. The example below shows an app that is still in the process of being upgraded.
  17. App in the proces of being upgraded

  18. When the installation is complete, a message is displayed that the server was installed, and provides an option to allow collection of anonymous data for the improvement of the product. You can modify your selection for this option after installation, in the Administration Settings.
  19. Exit the installer.
  20. After the upgrade:
    • Clear the browser cache before logging into the Lab Management console. Testing engineers should clear the browser cache on their testing tool machines before connecting to OpenText Functional Testing Lab.
    • iOS: Re-sign the Agent apps with your Developer certificate. For details, see Connect iOS mobile devices.

    To keep your files and data and safe, OpenText strongly recommends that you incorporate the following for the application file storage folder and external database (if relevant):

    • Access monitoring

    • Limited access rights (only OpenText Functional Testing Lab user)

    • Regular backup

    • Encryption

    • Storage consumption monitoring. You can set a threshold for total file storage , and monitor this with the File storage widget in the admin dashboard. For details, seeFile storage.

    OpenText also recommends that you:

    • Incorporate file system monitoring on the installation and temporary folders.
    • Back up the encrypted.properties file located in the OpenText Functional Testing Lab_ server_installdir/Server/conf directory.

Back to top

Stop, start, or restart the server

You can stop and start the server with the following commands:

  • To start the server: service DL start
  • To stop the server:  service DL stop
  • To restart the server: service DL restart

Ubuntu: Log information will print to the log file <OpenText Functional Testing Lab_server_installdir>/log/hpmc_daemon_service.log and not to the console.

Back to top

Server logs

OpenText does not recommend deleting server logs while the server is running. However, if you need to clear a log file while the server is running on Linux, you can run the following command:

cat /dev/null > <logFileName>

When deleting log files to increase free disk space, OpenText recommends only deleting log files with a numbered suffix. For example, connectorKeepAlive-1.log, connectorKeepAlive-2.log.

Back to top

Modify the server

If needed, you can modify the server configuration by running the update tool. For details, see Reconfigure the server.

Back to top

Patch installation

To benefit from the latest enhancements and fixes, install the latest patch for your current version. Server and connector patches can be downloaded from Software Licenses and Downloads. The latest patch includes the content of any previous patches. There is no need to install previous patches.

Important: If you use the remote iOS signing service, this should be upgraded before you upgrade the server.

When upgrading the server to the latest patch, the following should also be upgraded:

  • All connectors.

  • Manual signing tools (if applicable).

    • iOS Enabler for manual signing of iOS apps. After installing the server patch, the iOS  enabler is available in the Agent folder. Patches are available on the ADM Marketplace.

    • Android Enabler for manual signing of Android apps. After installing the server patch, the updated Android enabler is available in the server folder.

Follow the patch installation instructions included in the patch release notes.

Back to top

Troubleshooting

Follow the steps below to resolve a server installation error caused by a missing createrepo package.

Back to top

See also: