Installation/en

Aus expecco Wiki (Version 26.x)
Zur Navigation springen Zur Suche springen

German Version

Installation (Windows)

You will receive an email containing a download link to the expecco installation files. These files are named like:

  • expeccoSetup-23.2.0.exe -> expecco base system installation

in this example, "23.2.0" is the expecco version number. You will only need the plugin installation file, if you have licensed any of the optional plugins.


Please download the installation program onto your computer and start with the base installation (expeccoSetup-***.exe).
If the installer is blocked by the Windows Defender SmartScreen, click on "More Information" and then "Execute".

Report Settings Report Settings

The assistant will guide you through the installation, giving suggestions for the installation drive and folder, which can be changed as required. In addition, the set of components to be installed can be changed. We suggest that you install all packages (incl. sources and examples).

Installed but unlicensed plugins will become available whenever corresponding licenses have been installed. Other than that, they only waste some disk space.

Additional plugins can be installed any time later by re-executing the plugin-setup and selecting the missing plugin check boxes. Also, additional licenses can be acquired at any time later.

After the installation, an "expecco"-icon should be shown on your desktop and also in the start-menu. Expecco can now be started by double-clicking on that icon, via the start menu, or via command line by navigating to the "bin"-folder in the installation folder, and typing "expecco" to the command-prompt.

When started for the very first time, a window asking for a license is shown. Depending on the kind of license you have (single user vs. floating license), you should now follow the license installation procedure which is described below.

Automatic Installation of expecco via Commandline (Windows)

The expecco setup program can be driven entirely by command line switches, so that a defined installation is reproducible without user interaction - for software distribution, for CI machines, or as the basis for repackaging the setup into an MSI package.

Availability: the component selection switches (/InstType, /Components, /NoComponents, /ListComponents) are present in setup programs since version 26.2. The switches /S, /user, /InstallInto, /D and /UpdateInstallation, in contrast, have been available since version 18.2.

An older setup program does not complain about the new switches - it ignores them and installs everything. If you are not sure whether a given setup supports them, use /ListComponents (see below): an older setup writes no file.

Quick start

A silent installation for all users, with the Typical component selection, into a directory of your choice:

expeccoSetup64-<version>.exe /S /user=all /InstType=typical /InstallInto="C:\Program Files\exept\expecco"

The /S stands for "silent": expecco installs without a user interface and without asking any questions.

Without /InstType, /Components and /NoComponents, a silent installation installs everything, exactly as it did before these switches existed. Existing deployment scripts therefore keep working unchanged.

Options

Option Meaning
/S Silent. No dialogs; every question takes its default answer.
/user=all
/user=current
Install for all users (requires administrator rights) or for the current user only. Without administrator rights the setup always installs for the current user.
/InstallInto=<directory> Target directory. May appear anywhere on the command line and may be quoted. See below.
/D=<directory> Target directory, the installer's built-in switch. Must be the last switch on the command line and must not be quoted. See below.
/InstType=<type> Select one of the four predefined installation types.
/Components=<names> Additionally select these components or component groups.
/NoComponents=<names> Deselect these components or component groups.
/ListComponents=<file> Write the names of all components and groups this setup contains to <file>, then exit without installing.
/UpdateInstallation=YES
/UpdateInstallation=NO
YES keeps an already installed expecco, NO removes it first.
Target directory: /InstallInto or /D

There are two switches for the target directory, and their rules differ:

  • /D= is the installer's built-in switch. It must be the last switch on the command line, and the path must not be quoted - not even when it contains blanks. Everything following /D= is taken as the path, quotation marks included.
  • /InstallInto= is evaluated by the expecco setup itself. It may appear anywhere on the command line, and a path containing blanks may (and should) be quoted.

If both are given, /InstallInto= wins.

So for paths containing blanks, write:

expeccoSetup64-<version>.exe /S /InstallInto="C:\Program Files\exept\expecco"

and not /D="C:\Program Files\exept\expecco" - with the quotation marks, this results in a wrong target directory. Using /D=, the same directory is written as:

expeccoSetup64-<version>.exe /S /D=C:\Program Files\exept\expecco
Caution: /UpdateInstallation

If /UpdateInstallation is not given, a silent installation removes an already installed expecco without asking, because the silent default of that dialog is "uninstall". Pass /UpdateInstallation=YES whenever an existing version is to stay in place - for example when installing several versions side by side.

The name of this switch reads backwards, which is why this particular one is regularly confused.

Installation types

The four types are the same ones offered by the setup dialog. Each type additionally installs the expecco base, which is always installed and cannot be deselected.

Value Contents Components
typical Serial and parallel port, WebDriver base and current browser drivers 4
full Everything contained in this setup 42
gui WebDriver, Windows V2, Mobile, Java, AutoIt, Qt, Smalltalk GUI browser, manual tests 9
web WebDriver, Mobile, manual tests 4

The counts are those of a 64-bit setup. No new installation types were added - the switch only makes the existing four reachable from a script. For any selection the four types do not cover, use /Components and /NoComponents.

Components and groups

The names are the component identifiers used by the setup. Case does not matter. Separate several names with commas and without blanks. A group name stands for all of its members.

Group Meaning Members
SG_INTERFACE Interfaces SERIALPORT, PARALLELPORT, REMOTEACCESS, SAPBAPI, MQTT, OPCUA, GEMBIRD
SG_GUI GUI testing (contains the WebDriver group) SELENIUMWEBDRIVERBASE, SELENIUMWEBDRIVERCURRENT, SELENIUMWEBDRIVEROLD, WINDOWSAUTOMATION, MOBILE, JAVAGUI, AUTOIT, QT, OPENETSGUI, VNC, STXGUIBROWSER
SELENIUMWEBDRIVER WebDriver - a group of its own, usable on its own SELENIUMWEBDRIVERBASE, SELENIUMWEBDRIVERCURRENT, SELENIUMWEBDRIVEROLD
SG_AUTOMOTIVE Automotive bus interfaces PCAN, VECTOR, OPTOLYZER, SOMEIP, GPIB *
SG_TOOL_INTEGRATION Test management and version control JIRA, AQUA, POLARION, CVS, GIT, HG, CLAUDE_CODE, QC *, HPOCTANE *
SG_IMPORTER Importers MANUALTEST, WSDL, XMI, JAVAIMPORT, SEPPMED, QFTEST, FREEMIND, SPS7
SG_OTHER Other VBSCRIPT, DOCU, SELFTESTSPEC, VISA *
SG_EXPERIMENTAL Experimental JAVADEBUGGER
SG_3RDPARTYSW Bundled third-party software PYTHON3
SG_DOCUMENTS Document standards EDIFACT *, SWIFT *

* These components are present only in some builds: GPIB, QC, VISA and HPOCTANE in the 32-bit setup, EDIFACT and SWIFT only in a build made with the documents option. /ListComponents always reports the authoritative list for the setup in your hand.

Rules

  • /InstType replaces the whole selection. /Components and /NoComponents are applied afterwards and refine it. The order of the switches on the command line does not matter - with the exception of /D=, which must always come last.
  • Without /InstType, /Components adds to the default selection - which in a silent installation is Full.
  • The expecco base is always installed and cannot be deselected.
  • The browser drivers need their base installation. If SELENIUMWEBDRIVERCURRENT or SELENIUMWEBDRIVEROLD is selected, SELENIUMWEBDRIVERBASE is selected along with it - the same rule the setup dialog applies when a driver is ticked by hand.
  • An unknown component name aborts the setup with a message listing the valid names; nothing is installed. A typo in a distribution script is therefore noticed at once, instead of silently producing a wrong installation.

Examples

Typical, plus mobile and Java testing
expeccoSetup64-<version>.exe /S /user=all /InstType=typical /Components=MOBILE,JAVAGUI /InstallInto=C:\expecco
Full, without Python and the Java debugger
expeccoSetup64-<version>.exe /S /user=all /InstType=full /NoComponents=PYTHON3,JAVADEBUGGER /InstallInto=C:\expecco
Web testing with all importers
expeccoSetup64-<version>.exe /S /user=all /InstType=web /Components=SG_IMPORTER /InstallInto=C:\expecco
A second version next to an existing installation
expeccoSetup64-<version>.exe /S /user=all /UpdateInstallation=YES /InstType=typical /InstallInto=C:\expecco-26.2

To remove one such installation, see Uninstalling expecco (Windows).

Finding out which names a setup accepts
expeccoSetup64-<version>.exe /S /ListComponents=C:\temp\components.txt

This writes two lines - components: and groups: - and exits without installing anything.

Notes

The setup returns to the shell immediately

Like any Windows GUI program, the setup detaches from the console. In a batch file it must therefore be called so that the script waits for it to finish:

start /wait "" expeccoSetup64-<version>.exe /S /user=all /InstType=typical /InstallInto=C:\expecco

In PowerShell, use Start-Process -Wait. Otherwise the next line of the script runs while the installation is still unpacking.

The current browser drivers are chosen on the target machine

SELENIUMWEBDRIVERCURRENT installs the drivers matching the Chrome and Edge versions found on the machine being installed. For a rollout across machines with differing browser versions, install only SELENIUMWEBDRIVERBASE and let expecco load the matching drivers later.

Providing a license for the automatic installation

So that expecco can be started right after the installation, a license must be present on the target machine. The following variants are possible.

License from a local license file and dongle:
Plug the dongle into the target machine. Copy your license file into your user directory, e.g. "C:\Users\YourUserName\", under the name ".expeccoLicense", so that the file "C:\Users\YourUserName\.expeccoLicense" is your license file.

License from a license server: Here, a "template" license file and a "template" expecco preferences file have to be created first. You need a running expecco for this, connected to your license server. Start that expecco and configure your "template" license file under "Extras" → "Settings" → "License Installation" → "License from License Server". It should contain all plugins that are needed on the target machine for the automated expecco installation via command line. Request this license from the license server. Tick "Use license server" and then press "Save". expecco has now created the required template files under "C:\Users\YourUserName\AppData\Roaming\expecco". Copy the ".expeccoPreferences" and the "expeccoLicenseServerLicense" file into the corresponding directory on your target machine before the automatic expecco installation. expecco can then be started right after the automatic installation.

See also Installing a License and License Configuration.

Update Installation of expecco (Windows)

Likewise to a first installation, you will get links to the installation file via email, which you should download onto your machine. When executing the base installation expeccoSetup-***.exe, the installer will detect that there exists a previous installation and ask for confirmation to remove the old files. If you confirm, the old version with all plugins will be deinstalled. Alternatively, you can choose to keep the previous version and install the new one into a different folder. This is a good choice in that you can try any existing test cases for compatibility issues (which we try hard to prevent, but occasionally happen, for example when existing functions have been improved or bugs fixed for which your previous test suites contain work arounds). In any case will your settings, license files and existing test suites be kept unchanged and will never be removed by the installer (unless you saved any suites in or under the expecco installation folder, which you should never do).

Uninstalling expecco (Windows)

There are two ways to remove an expecco installation:

  • via the Windows software list ("Apps & Features" / "Programs and Features"), or
  • by running uninst.exe in the installation directory.

If several expecco versions are installed side by side, the difference matters: each installation directory contains its own uninst.exe, which removes exactly that directory and no other. The entry in the Windows software list, in contrast, always refers to the version installed last.

So to remove one particular version, run the uninstaller from exactly that installation directory:

C:\expecco-26.2\uninst.exe

The other installations are left untouched.

Start menu entries, the desktop shortcut and the file associations (.ets, .elf, .etr, .expeccoLicense, .expeccoPatch) are system-wide and belong to one installation only - the one installed last. They are therefore removed only when that particular installation is uninstalled. When a different, older installation is removed, they are kept and continue to point at the current version.

Installing a License

When started for the very first time, expecco will ask for a license. Depending on the type of license (single user or floating) perform according one of the following procedures.

Configuration of a Single User License

Configuration of a Floating-License

Installation (Linux)

Required Linux Packages

expecco can be installed on both 32- and on 64-bit Linux systems. The 64bit expecco version requires a 64-bit Linux operating system. We recommend to install the 64-bit expecco Version on a 64-bit Linux system.

The C standard library "glibc" must have a version >= 2.10.

Please use the package manager and install the following packages (32bit packages for the 32bit version, 64bit packages for the 64bit version):

  • libXinerama
  • libxrandr
  • libXft
  • libusb
  • unixODBC
  • libglib-2_0-0
  • gnuplot (optional - if Plot/Graph Actions are used)

Some of those may depend on other packages, which the package manager will install automatically for you.

On Ubuntu (15.04) packages are installed with:

   sudo apt-get update && sudo apt-get install -y \
       libxinerama1 libxft2 libxrandr2 unixodbc odbcinst libusb-1.0.0

Installing a 32-bit expecco on a 64-bit Linux (not recommended!)

We do not recommend this configuration. Better install the 64-bit expecco Version. If you want to install expecco-32-bit on 64-bit-Linux anyway, you require the linux packages in der 32-bit version.

The C standard library "glibc" must have a version >= 2.14.

In Ubuntu 64-bit (>= 15.04 64-bit) you have to install the 32-bit packages with the command:

   sudo apt-get update && sudo apt-get install -y \
       libxinerama1:i386 libxft2:i386 libxrandr2:i386 unixodbc:i386 odbcinst:i386 libusb-1.0.0:i386

Installation of expecco (Linux)

You will receive an email containing a link to the expecco installation file:

  • expecco-21.2.0.22.package

here, "21.2.0" is the expecco version number and "22" the build number. The single file contains both the base installation and all plugins, independent of which plugins have been licensed.

The installation package was generated for the "autopackage" installer. In order to install it, you may also need to install the "autopackage" package. If that is not present on your machine, you can download it from: https://download.exept.de/transfer/autopackage/x86_64/autopackage.tar.bz2

Download the expecco installation file and if required also the autopackage.tar.bz2 into the same folder (any temporary folder or your home folder will do).

expecco can be installed as root or as unprivileged user. If logged in as root, the installation will be into "/opt/expecco". If installing as normal user, it will be installed into your home folder under ".local".

Please execute (on the command line):

   bash ./expecco-21.2.0.22.package

and you will see an installation log similar to:


# Preparing package: expecco - Graphical Test Modeling                                                                                                                
# Checking for required C library versions ... passed
This may take a moment, please wait ... done
# Installing package: expecco - Graphical Test Modeling (package 1 of 1)                                                                                              
# 100%[==================================================] Extracting
# Copying files to /opt/expecco/plugin
# 100%[==================================================] Copying
# Copying files to /opt/expecco/packages/exept/technologyBridge
# Copying files to /opt/expecco/packages/exept/technologyBridge/javaBridge
# Copying files to /opt/expecco/packages/exept/technologyBridge/javaBridge/javaBridge_Server_Client
# 100%[==================================================] Copying
# Copying files to /opt/expecco/packages/stx/libsnmp
# Copying files to /opt/expecco/packages/stx/libsnmp/net-snmp-5.7.2/mibs
# 100%[==================================================] Copying
# Copying files to /opt/expecco/testsuites/libraries
# 100%[==================================================] Copying
# Copying files to /opt/expecco/bin
# 100%[==================================================] Copying
# Copying files to /opt/expecco/lib
# 100%[==================================================] Copying
# Copying files to /opt/expecco/packages/exept/expecco/doc
# 100%[==================================================] Copying
# Copying files to /opt/expecco/testsuites/libraries
# 100%[==================================================] Copying
# Copying files to /opt/expecco/testsuites/examples
# 100%[==================================================] Copying
# Copying files to /opt/expecco/packages/exept/expecco/reportGenerator/tools
# Copying files to /opt/expecco/packages/exept/pdf/afm
# 100%[==================================================] Copying
# Installing USB Dongle access...
# Updating package database...
The following package was successfully installed:
* expecco - Graphical Test Modeling
This installation used 478.74 MiB (502.00 MB) of disk space.
Remove this package by running package remove expecco from the command line.

Special Options for the Installation

You can specify the directory where expecco will be installed using the INSTALL_DIR environment variable:

  • Installation as root to /opt/expecco
    (Start with: /opt/expecco/bin/expecco)
   bash expecco-26.2.0.package
  • Installation as root to /opt/expecco-26.2
    (Start with: /opt/expecco-26.2/bin/expecco)
   export INSTALL_DIR=/opt/expecco-26.2
   bash expecco-26.2.0.package
  • Installation as user to $HOME/.local
    (Start with ~/.local/bin/expecco)
   bash expecco-26.2.0.package
  • Installation as user to $HOME/expecco
    (Start with ~/expecco/bin/expecco)
   export INSTALL_DIR=~/expecco
   bash expecco-26.2.0.package

Of course, if you choose any other installation directory, the $PATH setting needs to be changed, if you want to start expecco via the command line later.

Update Installation of expecco (Linux)

Likewise to a first installation, you will get links to the installation files via email, which you should download onto your machine. When executing the installation sh expecco-***.x86.package, the installer will detect that there exists a previous installation and ask for confirmation to remove the old files. If you confirm, the old version with all plugins will be deinstalled. Alternatively, you can choose to keep the previous version and install the new one into a different folder. This is often a good choice in that you can try any existing test cases for compatibility issues (which we try hard to prevent, but occasionally happen, for example when existing functions have been improved or bugs fixed for which your previous test suites contain work arounds). In any case will your settings, license files and existing test suites be kept unchanged and will never be removed by the installer (unless you saved any suites in or under the expecco installation folder, which you should never do).


Due to a bug in Ubuntu 14.04 and 14.10, you have to manually create a few missing symbolic links. Those bugs have been fixed in Ubuntu 15.04.
The missing links are "libodbc.so.2" and "libodbcinst.so.2", in the "/usr/lib/i386-linux-gnu" folder.

Please check their presence and if absent, create them with:

   cd /usr/lib/i386-linux-gnu
   sudo ln -s libodbc.so.1 libodbc.so.2
   sudo ln -s libodbcinst.so.1 libodbcinst.so.2

License Installation

Please install the license as described in the chapter below.

Installation (macOS)

Required macOS packages

expecco requires a 64-bit x64_64 macOS system (a version for older 32bit systems is available upon request). The OS must be macOS 10.6 or newer.

expecco requires XQuartz. Please install this from the Apple Store or xquartz.org unless already present on your machine (it is free).

Installation of expecco (macOS)

You will receive an email containing a link to the expecco installation file. The file will be named similar to:

  • expecco-2.7.0.22.dmg

here, "2.7.0" is the version number of expecco, and "22" the build number. The installation file contains the expecco base package and all plugins.

To install, open the "dmg"-file and move (drag) "expecco.app" into the "Application"-folder. You will need admin rights to move it to the system's Application folder. Alternatively move it to your private Application folder or onto the desktop. You can also execute expecco right out of the mounted "dmg".

Possible Problems

Expecco requires a number of other packages (actually shared libraries) to be installed and up-to-date on your system. It will fail to start and a notifier box might be shown if libraries are incompatible or missing (one library we found to make trouble on older macOS installations is "libfontconfig.dylib" (usually in "/opt/X11/lib"), which is required by the Xlibrary).

To analyze, what is going on, open a terminal window and change-directory to "/Volumes/expecco.dmg/expecco.app/Contents/MacOS". There, type in the command: "./expecco" and watch the output.

This should tell you, which part of the system is missing. More detail about which versions are needed is presented by: "otool -L expecco", which lists all required shared library versions, and the versions present on the system.

License Configuration

Expecco will ask for a license when started for the very first time. Please follow the license installation procedure as described below.

Configuration of a Single User License

Single user licenses are normally used with a USB-dongle. In special cases, time limited single user licenses are available without dongle ("Demo Licenses"). In both cases, you will have received a license file. License file and dongle must match, but within a company any dongle can be used with any license file (both contain a customer-ID, which must match).

  1. if you received a dongle, place it into any available USB port of your machine.
  2. store the license file anywhere on your computer (i.e. on the desktop)
  3. drag the license file into the license dialog or alternatively navigate to or enter the path of the license file directly.
  4. you will be asked to restart expecco. After that, expecco can be used and the license dialog will not reappear.

License files without dongle are always time limited.

If you pull the dongle and start expecco, it will tell you that your license has expired. After insertion of the dongle and a restart of expecco, this warning will no longer be shown.

While running, expecco will periodically check for the presence of the dongle. If you remove the dongle while expecco is executing, you will get a warning notice and any test execution or editing will no longer be possible. However, you will still be able to save your current work so that no changes or your work are lost.

Configuration of a Floating-License

To use floating licenses, you will need an expecco license server. The license server is to be reached inside your local network and you need its hostname or ip-address and a port number. Your network/systems administrator should give you this information, especially, if he used a port number different from the default. Please make sure, that a TCP-connection to the license server's port can be established. If required, you may have to configure routers and firewalls to enable this port access.

When the license dialog opens upon startup, choose the tab labelled "License Server". Enter the name or ip-address and the port number of the license server. Usually, the shown default port number can be used, except in rare cases, when the sysadmin had to use a different port due to other services or because some ports are blocked by firewalls or routers. The network/system administrator should be able to give you that information.

You can now choose which flavor of expecco to use: expecco-developer or expecco-runtime. The button labelled Update List of Plugins from Server shows a list of available plugins and if any floating licenses are currently available. Choose the plugins which are needed for your tests. Most plugins will need a single license instance, however some plugins may need multiple if the plugin implements tests which are distributed among multiple test machines. If that is the case (which is unlikely), choose the number of licenses you will need. The dialog displays how many of each license are currently available in the license server. The tooltip also shows the overall total amount of licenses; the difference is the number of licenses used by other users within your company.

Click on Install License to acquire the license(s) from the license server.

When you terminate expecco, those licenses will be returned to the license server and can then be reused by other users. While running, expecco will periodically contact the license server and renew those. If the license server can no longer be reached (after some grace period), expecco will disable any test execution and editing will no longer be possible. However, you can still save your suite so that work done will not be lost.

If expecco is not terminated regularly (i.e. if it is killed or if you simply power off your computer), all acquired licenses will also be returned to the license server after that grace period. They can then be used by other users in your company.

expecco remembers which licenses where acquired the last time, and will try automatically to re-acquire the same set when started. If that is not possible, because some licenses are currently in use by other users, the license dialog reappears and missing licenses are highlighted in red color. You can now either wait or discuss with other users about those licenses, or work with other test suites, which require a different set of plugin licenses.

If you need additional licenses during your work or you no longer need any previously acquired license, you can reopen the license dialog and change the set of plugin licenses. Then restart expecco to activate the changed license. The license dialog is reached via the "Extras→ → "Settings" → "License" menu item.

Changing the License After the Installation

Via "Extras" → "Settings" → "License", any setting such as the set of licenses or the license server contact information (host + port) can be changed at any time later. Any changes in the settings must be made permanent by clicking on "Save Settings". Otherwise, those changes will only affect your current session.

Additional Packages and Frameworks

The base installation already contains most of the components which are usually needed. Depending on the kind of test additional packages might be required to be installed. See "Installing additional Frameworks" for more info.

We recommend the following:

Also useful, but less often required:

In case you want (or have) to write code in C or C++:

Patches and Updates



Copyright © 2014-2024 eXept Software AG