Settings ExternalToolsSettings/en

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

External Tools Settings[Bearbeiten]

Expecco may use external programs to provide additional functionality. This dialog allows for the configuration of which executable is used in particular.

HTML Viewer[Bearbeiten]

Specify the program which is used to display online help documents. By default (if left blank), the configured web-browser (typically: Firefox, Safari or Internet Explorer) is used. For security reasons, it is recommended to use Firefox or Safari as opposed to Internet Explorer.

PDF Viewer[Bearbeiten]

Specify the program which is used to display generated report documents. By default, the configured PDF viewer (typically: acrobat reader) is used.

Wiki Folder[Bearbeiten]

Should point to this Wiki (and obviously, it does already, otherwise you would probably not read this document). By default, the Wiki pages are accessed via HTTPS (i.e. encrypted SSL on port 443). You can turn this to HTTP, if your firewall does not allow outside connections via ports other than 80.

External Text Editor[Bearbeiten]

Specify the program to edit text attachments. Useful Linux/Unix settings are "xterm -e vi %1" or "xterm -e emacs %1". By default, a built in text editor (FileBrowser) is used.

External CSV Editor[Bearbeiten]

Specify the program to edit CSV attachments. A useful Linux/Unix setting is "/opt/libreoffice/bin/office %1" or another excel-alike calculator which can read and write CSV files. By default, a built in text editor (FileBrowser) is used.

External ImageEditor[Bearbeiten]

Specify the program to edit image/bitmap attachments. The program should be able to read/write jpeg, png, tiff, gif and bmp images (whatever is present in your attachments). Useful programs are gimp, photoshop or mspaint. By default, a built in simple bitmap editor is used.

   

External Script Interpreter Settings[Bearbeiten]

Script interpreters are programs used to execute script action blocks written in various programming languages, such as Node.js, Ruby, TCL, Python etc. The location (i.e. folder) and name of the executable may depend on the operating system or your particular choice when installed. It may also be required to choose among a number of different installed versions. This dialog configures those language interpreters.

Point right.png If no special setting is entered here, the interpreter is assumed to be found along the regular command line path. Thus, if you have ruby installed, and you can execute it from the command line via "ruby --version", then no special setup is needed in this dialog (for ruby).

This is the recommended way to install those external programs: let them install themself at their preferred location and make sure, they are found along your shell's/cmd's PATH setting (you may have to install them before starting expecco or restart expecco, so that the PATH is already correct at the time expecco is started).

Additional Path[Bearbeiten]

Additional path(es) which are appended to the $PATH shell environment variable for external script interpreters. This will be valid eg. for shell scripts, but also for interpreters like python, node etc.

Point right.png Directories are separated by ':' (colon) in Unix systems, whereas ';' (semicolon) is used in Windows.

Shell (Win32 only)[Bearbeiten]

Specify the program which is used to execute shell scripts.

Point right.png Under the Windows operating system, a Unix bourne/korn-shell compatible shell has to be installed (for example as part of the cygwin package).

This is only needed if your test suite includes script actions which are written in the Unix shell command language AND your test suites are required to run unchanged under both Windows and Unix operating systems (however, be aware that this still does not guarantee trouble free operation; file patches and the different sets of available shell command line tools may still make your scripts unportable).

If unspecified, the default shell (value of the "SHELL" environment variable, in either an expecco environment in scope or the shell environment) is used.

In most cases, this setting is not required.

Powershell Path[Bearbeiten]

Specify which powershell interpreter to use for Powershell elementary blocks.

Point right.png Although mostly used in Windows environments, powershell is also available for Unix systems, incl. OSX [1]
However, it will require a Mono CLR environment to be installed.

By default, the powershell command which is found along your PATH setting is used (i.e. the same as found when executing "powershell" on the command line). Of course, you have to have powershell installed on your machine. Notice, that on some systems, the powershell command is named 'pwsh'. If unspecified, the value of the "POWERSHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any Powershell elementary blocks.

Node.js[Bearbeiten]

These settings are not needed if you do not use any Node elementary blocks.

Node.js Path[Bearbeiten]

Specify which node.js interpreter to use for Node elementary blocks.

By default, the node command which is found along your PATH setting is used (i.e. the same as found when executing "node" on the command line). Of course, you have to have ruby installed on your machine. If unspecified, the value of the "NODEJS_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

Module Path[Bearbeiten]

Path where node modules are searched. This is passed to node in the NODE_MODULES Environment variable.

Execution Directory[Bearbeiten]

Directory in which node is executed.

NodeRED Module Path[Bearbeiten]

Path where node modules are searched for NodeRED actions. This is passed to node in the NODE_MODULES Environment variable.

NodeRED Execution Directory[Bearbeiten]

Directory in which the node interpreted used for NodeRED Actions is executed.

Python Path[Bearbeiten]

Specify which python interpreter to use for Python elementary blocks.

By default, the python command which is found along your PATH setting is used (i.e. the same as found when executing "python" on the command line). Of course, you have to have python installed on your machine. If unspecified, the value of the "PYTHON_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any Python elementary blocks.

Python2 and Python3 Settings[Bearbeiten]

Due to some bad planning in the python community, there were a number of changes between python2.x and python3.x, which may (and usually do) make scripts written for either version incompatible with the other. For example, the following print expression from python2:

print "Hello World from a Python2 script\n"

needs parentheses in python3:

print ("Hello World from a Python2 script\n")

and will lead to a syntax error if executed in python3.

Thus, it may be necessary to specify an explicit python interpreter version to be used for python script actions. If all of your actions depend on the same python interpreter version, it is sufficient to ensure that either the "PYTHON_SHELL" variable is set correctly, or the "Python Path" is defined in the settings to point to the correct interpreter. However, if you have mixed version scripts (for example, when importing python actions written by another team, which used a different version), you have to specify the python interpreter explicitly for some of the actions.

For this, expecco contains 3 setting fields for the python interpreter: "Python Path" in the settings or "PYTHON_SHELL" in the shell environment, which are used when no explicit version is required, or if all of your script require the same python version, "Python2 Path" in the settings (or "PYTHON2_SHELL"), which are used for scripts which have been marked as explicitly requiring python2 and "Python3 Path" in the settings (or "PYTHON3_SHELL") for scripts which are marked to require python3.

The python version requirements are defined in the environment of the suite/imported library in which the action is defined: a variable named "PYTHON_VERSION", which should be an integer with either "2" or "3" as value specifies the version to be used for ALL of the python actions within that library. Notice, that the environment of the project from which the action was imported is relevant here - not the active environment at execution time, or the suite's top environment. This version number then determines, which of the above setting is to be used (i.e. PYTHON2_SHELL/path or PYTHON3_SHELL/path).

Using that double-indirect mechanism, it is still possible to:

  • import multiple libraries with different python-versions requirements
  • specify the paths independent of where the python interpreters are installed (i.e. the machine on which the final suite is executed may have different installation paths than the machine on which the imported libraries were developed).

A concrete demo importing libraries which require different python interpreter versions is found in "d46_Suite_using_both_Python2_and_Python3_actions.ets" in the demo folder.

Notice:
In expecco 19.2, you can also choose the python version in the code editor's language chooser.

'expecco' Path[Bearbeiten]

Specify which expecco to use for remote action execution (for load and multi-peer tests). For now, this is an unsupported, unpublished feature to be deployed with a later release.

ST/X, VisualWorks and VisalAge Path[Bearbeiten]

Specify which interpreter to use for bridged Smalltalk elementary blocks for various Smalltalk implementations (eXept, Cincom or IBM/Instantiations). For now, this is an unsupported, unpublished feature to be deployed with a later release.

Ruby Path[Bearbeiten]

Specify which ruby interpreter to use for Ruby elementary blocks.

By default, the ruby command which is found along your PATH setting is used (i.e. the same as found when executing "ruby" on the command line). Of course, you have to have ruby installed on your machine. If unspecified, the value of the "RUBY_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any Ruby elementary blocks.

Perl Path[Bearbeiten]

Specify which perl interpreter to use for Perl elementary blocks.

By default, the perl command which is found along your PATH setting is used (i.e. the same as found when executing "perl" on the command line). Of course, you have to have perl installed on your machine. If unspecified, the value of the "PERL_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any Perl elementary blocks.

TCL Path[Bearbeiten]

Specify which tcsh interpreter to use for TCL elementary blocks.

By default, the tcsh command which is found along your PATH setting is used (i.e. the same as found when executing "tcsh" on the command line). Of course, you have to have TCL installed on your machine. If unspecified, the value of the "TCL_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any TCL elementary blocks.

Go Path[Bearbeiten]

Specify which go interpreter to use for Go language elementary blocks.

By default, the go command which is found along your PATH setting is used (i.e. the same as found when executing "go" on the command line). Of course, you have to have go installed on your machine. If unspecified, the value of the "GO_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any Go elementary blocks.

Gnuplot Path[Bearbeiten]

Specify which gnuplot interpreter to use for Plot/Graph elementary blocks.

By default, the gnuplot command which is found along your PATH setting is used (i.e. the same as found when executing "gnuplot" on the command line). Of course, you have to have gnuplot installed on your machine. If unspecified, the value of the "GNUPLOT_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any Plot/Graph elementary blocks.

'R' Path[Bearbeiten]

Specify which 'R' interpreter to use for RScript elementary blocks.

By default, the 'R' command which is found along your PATH setting is used (i.e. the same as found when executing "R" on the command line). Of course, you have to have 'R' installed on your machine. Notice, that on OSX and Windows systems, the 'R' command is named 'r' (lowercase), whereas on Linux systems, it is called 'R' (uppercase). If unspecified, the value of the "R_SHELL" environment variable (in either an expecco environment in scope or the shell environment) is used.

This setting is not needed if you do not use any RScript elementary blocks.

External OCR Tools Settings[Bearbeiten]

Expecco uses an external framework for OCR (Optical Character Recognition), especially when local screen or VNC GUIs need to extract text from captured screenshots.

At the moment, the most powerful and free framework is the "tesseract" open source program, which can be downloaded and installed from [ https://github.com/tesseract-ocr/tesseract/wiki/Downloads ]. It is available for Windows, Linux and OSX.

For Windows another popular package (which is also based on tesseract) is "capture2text", which can be downloaded and installed from [ https://sourceforge.net/projects/capture2text ].

You may also use any other (possibly commercial) OCR framework.

In the OCR settings dialog, first choose the framework to use (tesseract, capture2Text or other), then the path to the OCR command itself (eg. "c:\program files\Tesseract-OCR\bin\tesseract.exe" or simply "tesseract", if it is in your path) and finally a command template, which is expanded with command-path, input file Name (png) and output file Name (txt). If the command needs any extra command line arguments, defined them in this template.


For tesseract and capture2text:
Please make sure that the language specific tessdata packages are installed (files are typically in "c:\program files\Tesseract-OCR\tessdata"). If not, download from: [ https://github.com/tesseract-ocr/tessdata_best ].



Copyright © 2014-2024 eXept Software AG