2021 July Release

Configuration FilesPermanent link for this heading

In the configuration file you can define the properties for starting a test. The following XML tags are available:

  • <Config ... />
    Defines the project path.
  • <Run ... />
    Defines properties for running the test file.
  • <Login ... />
    Defines the login information.
  • <BrowserSettings ... />
    Defines if a proxy server should be used for connecting to the defined web service.
  • <ParameterTable ... />
    Defines if a parameter table should be used.
  • <Adaptor ... />
    Defines the Fabasoft app.test Client Adaptor settings.
  • <Agent ... />
    Defines the Fabasoft app.test Agent settings.
  • <Reporting ... />
    Defines the reporting settings.
  • <Telemetry ... />
    Defines if Fabasoft app.telemetry should be used.
  • <Threads ... />
    Defines if several tests should be executed parallel by using threads.

<Config ... />

The root tag of the configuration file is the <Config> tag. In here you can define the path of the project in the attribute projectpath and the project name in the attribute projectname.

Note: If a backslash occurs in the end of a path you have to escape this backslash by another backslash (otherwise the backslash escapes the quotation mark).

Example

<Config projectpath="D:\apptest-projects\Fabasoft Folio\\" >
   <!-- Fabasoft app.test configuration -->
</Config>

<Run ... />

In the Run tag you can define the settings for running the test.

These are the attributes that can be set in the Run tag:

Attribute

Description

execute

In the execute attribute the path to the test file is specified that should be executed.

webserver

The webserver attribute contains the web server where the test should be executed.

address

The address attribute contains the address where the test should be executed.

applicationtype

The applicationtype together with the attribute clienttype decide the test environment. The applicationtype can be one of the following:

  • BROWSER - Use the browser installed on the test client
  • JAVA - Use Java plugins to test custom applications

Default value: BROWSER

clienttype

The clienttype attribute contains the web browser that should be used for executing a test.

When using the application type BROWSER the following options are valid:

  • APPLE_SAFARI
  • GOOGLE_CHROME
  • GOOGLE_CHROME_BETA
  • GOOGLE_CHROME_HEADLESS
  • MICROSOFT_EDGE_CHROMIUM
  • MICROSOFT_EDGE_CHROMIUM_BETA
  • MICROSOFT_EDGE_CHROMIUM_DEV
  • MOZILLA_FIREFOX
  • MOZILLA_FIREFOX_BETA
  • MOZILLA_FIREFOX_HEADLESS

With the application type JAVA the only option here is EXTERNAL.

scope

The scope attribute contains the scope that might be used within the file. The scope is an integer value between 1 and 9999.

Default value: 1

runs

The runs attribute contains the number how often the specified file (execute attribute) should be executed. This must be a number greater than 0.

Default value: 1

sleep

The sleep attribute contains a time in milliseconds. The Fabasoft app.test Console Player waits the defined time after each statement.

Default value: 0

onerror

The onerror attribute defines what should happen if an error occurs. You can enter the following values into this attribute:

  • continue - If continue is used, the Fabasoft app.test Console Player ignores errors and continues with the next statement if an error occurs. You can find all errors in the report file later on.
  • break - If break is used, the Fabasoft app.test Console Player stops if an error occurs.
  • cancel - If cancel is used, the Fabasoft app.test Console Player ends the current test run if an error occurs.

Default value: continue

onerror.screenshot

The onerror.screenshot attribute defines if a screenshot should be created each time an error occurs.

Default value: false

onerror.htmldump

The onerror.htmldump attribute defines if the HTML of the currently shown web site should be saved each time an error occurs.

Default value: false

onerror.controldump

The onerror.controldump attribute defines if the structure of all controls currently displayed in the Fabasoft app.test Client Adaptor should be saved as an XML file each time an error occurs. Furthermore, the currently set test parameters are saved as a parameter table.

Default value: false

onerror.apptelemetryreport

The onerror.apptelemetryreport attribute defines if the error (with screenshot and all dumps as configured) should be reported to app.telemetry if available. Note: This attribute cannot be configured in the run dialog (defaults to true).

Default value: true

ontimeout

The ontimeout attribute defines what should happen when a “Timeout” error occurs. This setting is only effective if onerror is set to continue. You can enter the following values into this attribute:

  • continue - If continue is used, the execution continues with the next statement if a timeout occurs. You can find all errors in the report file later on.
  • cancel_sequence - If cancel_sequence is used, the current session is cancelled and continued with the next session if there is one.
  • cancel - If cancel is used, the execution of the current test is stopped if an error occurs.

Default value: continue

onbreakpoint

The onbreakpoint attribute defines what should happen if a breakpoint is reached. You can enter the following values into this attribute:

  • continue - If continue is used, the Fabasoft app.test Console Player ignores breakpoints.
  • break - If break is used, the Fabasoft app.test Console Player stops if a breakpoint is reached.

Default value: continue

closeremainingcontextapps

If an adaptor is closed, all remaining open third-party applications started by this adaptor which can be found via the Context statement will be closed automatically.

If set to false, only a list of open applications will be reported.

This will result in a warning in the session statement.

Default value: true

langpath

The langpath attribute defines the default path for the language files that are used in the test. This path is saved in the system parameter langpath and can be used in the test for loading language files.

Default value: {~resources~}LanguageFiles

timeout

The timeout attribute contains the timeout for statements, which means Fabasoft app.test throws a "Timeout" error if a statement takes too long to be executed. The timeout value can be defined individually (in milliseconds).

Default value: 30000

sequencetimeout

The sequencetimeout attribute contains the timeout for session statements, which means Fabasoft app.test throws a "Timeout" error if a session takes too long to be started. The timeout value can be defined individually (in milliseconds).

Default value: 60000

contexttimeout

The contexttimeout attribute contains the timeout for context statements, which means Fabasoft app.test throws a "Timeout" error if a context takes too long to be started. The timeout value can be defined individually (in milliseconds).

Default value: 90000

maxerrors.test

In the maxerrors.test attribute you can define the maximum number of errors which may occur within a test. If this number is exceeded, the test is canceled.

Default value: 0 (disabled)

maxerrors.sequence

In the maxerrors.sequence attribute you can define the maximum number of errors which may occur within a session. The execution of the test continues with the next session if this number is exceeded (only the current session is canceled).

Default value: 0 (disabled)

Example

<Run
   execute="{~projectpath~}Tests\WorkflowTest.apptest"
   webserver="fscserver.example.com"
   address="http://{~webserver~}/fsc"
   clienttype="GOOGLE_CHROME"
   scope="5"
   runs="2"
   sleep="0"
   onerror="continue"
   onerror.screenshot="true"
   onerror.htmldump="true"
   onerror.controldump="true"
   onerror.apptelemetryreport="true"
   onbreakpoint="continue"
   timeout="45000"
   sequencetimeout="90000"
   contexttimeout="180000"
   ontimeout="cancel"
   maxerrors.test="5"
   maxerrors.sequence="2"
   langpath="{~resources~}LanguageFiles\LANG_ENGLISH\"
/>

<BrowserSettings ... />

In the BrowserSettings tag you can define if a proxy server should be used when connecting to the web site defined in the Run tag.

These are the attributes that can be set in the BrowserSettings tag:

Attribute

Description

useproxy

In the useproxy attribute it is defined if a proxy server should be used. If this attribute is set to true a proxy server is used which also means you have to set the following attributes as well (for defining the proxy server to be used).

Default value: false

proxyserver

The proxyserver attribute defines the proxy server to be used (IP address or name).

proxyport

In the proxyport attribute the port used by the proxy server is defined.

Default value: 8080

jsenabled

In the jsenabled attribute it is defined if running JavaScript in the browser is enabled.

Default value: true

pluginsenabled

In the pluginsenabled attribute it is defined if running plug-ins in the browser is enabled.

Default value: true

Example

<BrowserSettings
   useproxy=true
   proxyserver=10.10.10.10
   proxyport=8080
   jsenabled=true
   pluginsenabled=false
/>

<ParameterTable ... />

You can define variables in the configuration that can be used in the test. There are two ways for defining parameter tables in the configuration file:

You can either load an existing function definition file by using the filename attribute or you can directly enter set statements into the ParameterTable tag.

If you use both, the parameters set directly in the configuration file (by set statements) overwrite the parameters from the file that is loaded.

Example

<ParameterTable
   filename="{~projectpath~}ParameterTables\Parameters.apptest"
/>

<ParameterTable>
   <Set parameter="firstname" value="Anthony" />
   <Set parameter="lastname" value="Tatterson" />
   <Set parameter="birth" value="18.05.1954" />
</ParameterTable>

<ParameterTable filename="{~projectpath~}ParameterTables\Parameters.apptest" >
   <Set parameter="firstname" value="Anthony" />
</ParameterTable>

<Login ... />

On the "Login" tab of the "Run" dialog the information for logging on is specified:

This information is also needed in the Fabasoft app.test Console Player and can be specified in the Login tag by setting the following attributes:

Attribute

Description

authentication

In the authentication attribute you can define the type of authentication that should be used.

  • basic - Basic authentication is used. This means the user that is specified in the session is used for logging on.

Default value: basic

domain

The domain attribute specifies the domain of the user. This domain is overwritten if a domain is defined in a session of the test

username

The username attribute contains the name of the user that should be used. This user is overwritten if a user is defined in a session of the test

password

The password attribute contains the password that is used for logging on. This password is overwritten if a password is defined in a session of the test.

Example

<Login
   authentication="basic"
   domain="fscdomain"
   username="david.porter"
   password="david"
/>

<Adaptor ... />

In the Adaptor tag you can define the properties for the Fabasoft app.test Client Adaptor like the size, the position and the port that should be used.

These are the attributes that can be set in the Adaptor tag:

Attribute

Description

width

The width attribute defines the width of the Fabasoft app.test Client Adaptor (in pixels).

Default value: 1000

height

The height attribute defines the height of the Fabasoft app.test Client Adaptor (in pixels).

Default value: 750

poshor

The poshor attribute defines the horizontal position of the Fabasoft app.test Client Adaptor (in pixels).

Default value: 10

posver

The posver attribute defines the vertical position of the Fabasoft app.test Client Adaptor (in pixels).

Default value: 10

port

The port attribute defines the TCP port used by the Fabasoft app.test when running a test.
Note: If the configured port is already in use, the next free port is taken.

Default value: 4360

Example

<Adaptor
   width="1260"
   
height="1000"
   
poshor="5"
   
posver="5"
   
port="4360"
/>

<TreeModel ... />

In the TreeModel you can define the default tree model. If it is not set, the tree model is “ARIA”.

These are the attributes that can be set in the TreeModel tag:

Attribute

Description

default

The default attribute defines the used tree model.

Default value: ARIA

<Telemetry ... />

In the Telemetry tag you can define if the Fabasoft app.telemetry should be started and used during the execution of a test file.

These are the attributes that can be set in the Telemetry tag:

Attribute

Description

active

In the active attribute you can define if Fabasoft app.telemetry should be used. If you enter true into this attribute, Fabasoft app.telemetry is started when the test is started, too. Otherwise, the entries in the Telemetry element are ignored (which means the Fabasoft app.telemetry is not started).

Default value: false

username

The username attribute contains the name of the user that should be used for logging on to the Fabasoft app.telemetry server.

password

The password attribute contains the password of the user that is defined in the user attribute.

address

The address attribute contains the URL of the Fabasoft app.telemetry server.

session

The session attribute defines the name of Fabasoft app.telemetry session (e.g. the name of the test that is carried out). With this name the telemetry session can be associated with a specific test run in the user interface of Fabasoft app.telemetry.
Please note that no parameters can be referenced in this attribute.

target

The target attribute defines the target application that should be logged by Fabasoft app.telemetry, e.g. Fabasoft Folio.

targetinstance

In the targetinstance attribute you can define an additional instance within the target application. This might for example be the domain id of the Fabasoft Folio domain.

tier

The tier attribute defines the level at which Fabasoft app.telemetry should start following up the activities of the target. This might for example be the web service. The software telemetry follows up an activity that works on different level.

tierinstance

In the tierinstance attribute you can define an additional instance of the starting level, for example an instance of the web service.

level

The level attribute defines the logging level. Three levels are available within Fabasoft app.telemetry (details can be found in the documentation of Fabasoft app.telemetry):

  • "Normal"
  • "Detail"
  • "Debug"

filter

The filter attribute defines the context of the target application, for example a Fabasoft Folio user. This context is used to filter the activity that is followed up by Fabasoft app.telemetry. If no filter is specified, all activities of the product are monitored by Fabasoft app.telemetry.

Example

<Telemetry
   active="true"
   username="anthony.brown"
   password="anthony"
   address="https://apptelemetry.fabasoft.com"
   session="{~testname~}"
   target="Fabasoft Folio"
   targetinstance="1.1111"
   tier="Webservice"
   tierinstance="fsc"
   level="detail"
   filter="COO.1.1002.1.62"
/>