SmartBear projects

Device configuration

For general device configuration visit EEM Project with EEM Timer jobs

Example of a SmartBear device configuration

In the following example, the parameters for a device have been set for SmartBear tests as described in the EEM project infos section:

EEM Project job details

SmartBear project settings:

EEM Project parameters

Parameter

Description

Suite name

A TestComplete project consists of at least one project suite and one project within that suite. If there is only one project, only the name of the project suite needs to be filled in. Otherwise, specify both suite and project name. Once this field is filled in, the Arguments field is automatically filled in with the default command line arguments to attach to the TestComplete or TestExecute command.

Project name

Name of the TestComplete project. This only needs to be filled in if the project suite contains more than one project.

VPN test mode

Check this box only in the special case where the project to be run is itself initiating VPN connections to a VPN gateway during the project run. This would lead to temporary connection loss between SKOOR Engine and the robot host. Of course, the project itself would need to include closing these VPN connections again, otherwise SKOOR Engine will never be able to fetch results. If checked, SKOOR Engine will not wait for the exit status of the project run and will only try to fetch the results from the project run after waiting for the amount of time specified in Run time limit.

Run time limit

Specify the amount of time to allow for running the project. This depends on what the project does. This parameter is optional, except if VPN test mode is also checked. If this time has elapsed and the testing process is still running on the robot, it will be terminated. In this case, no MHT logs will be generated and fetched (which will result in a warning).

Robot timeout

Optional internal timeout parameter (set to 0 s to disable). This parameter is only useful if the value is shorter than the Run time limit parameter

Capture video

If video capturing is enabled, the entire test run can be watched from the SKOOR Engine result page in case of failed test runs. This can be very helpful to find and correct errors in the project. Test runs that terminate with an OK state are not transferred to the server to avoid unneccessary network load and storage consumption

Auto update suite

Check this control if the most current project files should be fetched from the SKOOR Engine project repository

Repository

Select one of the two project repositories Production or Test to draw the project files from. This parameter is only visible if the EEM device property EEM execution mode is set to TestExecute and Auto update suite is checked

Sort timer jobs

Choose from from By name, By state, By run time or By start time to automatically sort timer jobs or Manually to sort them using the up or down buttons in the Linked EEM Timer Jobs section

Please note that video capturing can cause high CPU load on the SKOOR Engine system

The Linked EEM Timer Jobs section shows which EEM timers have been added to this EEM Project job. No timer jobs have been added yet in the above figure.

Remote Desktop Protocol (RDP) settings for measurements

RDP should be configured on the device that holds the EEM project job to avoid redundant settings on every single job. However, if a job needs different parameter settings, the device parameters can be overridden by parameters configured on the job:

Parameter

Description

Domain

Domain the user belongs to. If the user is a local Windows user, the EEM PCs hostname must be configured as domain

Username

The name of the login user

Password

The user's password

Screen resolution

In case of image based testing, the screen resolution is important. The same resolution must be configured as used on the system where the project was developed. Default resolution is 1920x1200

Optional

Further parameters of the rdesktop or FreeRDP utility can be configured here if required

Logout session

Log out from the RDP session after project execution

Please note that video capturing can cause high CPU load on the SKOOR Engine system

EEM Project values and alarm limits

Value / Alarm limit

Description

Run time

The run time of the whole EEM project

Response code

  0 = Ok
 -1 = General error
  1 = Test results include warnings
  2 = Test results include errors
  3 = The test cannot be run
18 = Unable to launch TestComplete/TestExecute
11 = Parameter missing
12 = Wrong parameter
13 = Project not found
14 = Executable not found
15 = No permission
16 = Execution timeout
20 = Execution has been killed
17 = Test failed
19 = Unknown response

Error code

Generic job error code (see section Job error codes)

If an EEM Project job is linked to a schedule (which defines active and inactive times for job execution) the Check now button does not work during the inactive time configured in the schedule.

Adding timer jobs

The timer jobs represent the measurements to display in the SKOOR Engine or dashboard. A project can have multiple timer jobs such as the total time of all measurements, the login into an application and other use cases. The timers must be configured / programmed in the project. If the test project is available in one of the SKOOR Engine repositories or on the EEM robot in the configured scripts directory, the SKOOR Engine will try to extract the timers from the project and automatically configure them.

In the edit window of an EEM project job, click Add timer jobs:

The following screen appears and documents the found timers and actions done:

The timers have been configured below the EEM project job:

With the up and down keys, they can be ordered now as required.

Adding timer jobs manually

If timer jobs should be created before the EEM project is available on the SKOOR Engine and robot PCs, they can also be added manually. Click on the EEM project jobs name to get below the project job and add the timer using the function menu or the gear icon:

After that, the timer name must be configured exactly as defined in the project. The following screen shows a timer called totalTime:

EEM Timer parameters

Parameter

Description

Timer name

Only the job name and timer name can be configured on a EEM Timer job. The job's Name can be different from the Timer name but the Timer name must correspond to the timer name as written in the timer file.

EEM Timer values and alarm limits

Value / Alarm limit

Description

Run time

The run time of this particular EEM timer

Result code

 0 = Ok
-1 = Notrun
-2 = Failed
-3 = Project error
 1 = Known error

Known Error

The Known error alarm limit is only available on EEM Timer jobs and checks if a string was returned in the timer file which differs from the usual OK, FAILED or NOTRUN strings. Alarming is possible on detecting a string, not on its contents.

Error code

Generic job error code (see section Job error codes)

EEM Timer details

Timers are introduced within a project to measure the outcome (OK/Failed/NotRun) and the time it took for a specific section of a test run. During the run the timers are written to a text file within the project directory. The file is structured in the following way:

========== 2017.11.30-12.43 =================
Name;Status;Time
----------------
Calc_Open;OK;6.26
Calc_Calculate;OK;1.69
Total;OK;8.47

For each timer, the name of the SKOOR Engine EEM Timer job, the actual timer name, its current status and the time in seconds it took to run the corresponding timer during the last run are printed.

There is also the possibility to have the project write a specific error string to the timer file which will then be parsed as a string value. This makes sense when a project encounters errors which occur frequently and are known but cannot be fixed in the tested application or website. In such a case the recognition of the error needs to be programmed into the project sequence and should write a specific error string to the timer file for the specific timer. An example of such a timer file is shown below:

========== 2017.11.30-12.43 =================
Name;Status;Time
----------------
Calc_Open;OK;6.26
Calc_Calculate;Known error encountered in Calculate sub-step;1.69
Total;OK;8.47

The second column of the Calc_Calculate line is interpreted as a known error on EEM timer job level.

These known errors can then be used in alarm limit configurations. An example of an encountered known error is shown in the following figure:

And in the values section on the corresponding EEM timer job:

The timer file, in this case calc.txt (its name must be identical to the Project name), is fetched via WinAgent and parsed for the states and values of each timer. But this happens only if timers with the corresponding names are configured. 

EEM Project results

After a run of the project on the EEM robot, the values section of the EEM Project job looks like this (differs with SikuliX projects):

or in case of an error during the project run:

By clicking the Timer file link, the fetched timer file can be viewed directly (see example file above).

By clicking the link next to MHT log file, the MHT summary log can be downloaded or viewed directly. Direct viewing is only possible, if the link is clicked from within an Internet Explorer browser. The following is an example of an MHT log:

Clicking the Result files link in the Values section will bring up the following new browser window or tab:

This page provides an overview of the tests that have run on the EEM robot. For each run where logs were collected by SKOOR Engine there is a line with a timestamp and a link to the corresponding MHT file. If there were errors during a run the link is placed in the Failed tests column, along with a tiny icon that can be clicked and which opens a new browser window with the a screenshot of the first error encountered during the run. This mostly gives a good idea about why a test run failed. If the most recent run failed, such as in this example, the screenshot is also displayed in large in the Last result section of this overview. Clicking the Screenshot link in the job’s Value section opens this screenshot image directly.

EEM Project example

Run a simple EEM Project with 3 EEM Timers

The following configuration assumes that the remote host has a TestComplete Project suite called Calc with a project called Calc underneath. The project output contains 3 timers and is run via the WinAgent installed on the remote host. WinAgent must be configured to allow execution of the testexecute.exe binary. The timers are added as individual EEM Timer jobs beneath the EEM Project job.

Output