TestManager v2.6.5 UserGuide
TestManager v2.6.5 UserGuide
TestManager v2.6.5 UserGuide
Table of content
1. Introduction _________________________________________________________________________ 6
1.1 TERMS AND ABBREVIATIONS __________________________________________________________ 6
1.2 REQUIREMENTS ___________________________________________________________________ 6
1.2.1 Optimal hardware configuration __________________________________________________ 6
1.2.2 Supported platforms __________________________________________________________ 6
1.2.3 Supported Java™ versions _____________________________________________________ 7
1.2.4 Additional softwares __________________________________________________________ 8
1.2.5 Privileges ___________________________________________________________________ 8
1.3 TESTMANAGER INSTALL _____________________________________________________________ 8
1.3.1 The TestManager™ download / update site ________________________________________ 8
1.3.2 Download of the TestManager™ installer __________________________________________ 9
1.3.3 Installation _________________________________________________________________ 10
1.4 LICENSING ______________________________________________________________________ 10
1.4.1 Online Licensing ____________________________________________________________ 10
1.4.2 Offline Licensing ____________________________________________________________ 11
1.5 W ORKSPACE ____________________________________________________________________ 12
2. TestManager setup __________________________________________________________________ 13
2.1 TESTMANAGER SETTINGS __________________________________________________________ 13
2.1.1 TestManager/Configuration/log4j.ini _____________________________________________ 13
2.1.2 TestManager/Configuration/config.ini ____________________________________________ 13
2.1.3 Content of TestManager/TestManager.ini file ______________________________________ 13
2.2 GENERAL PREFERENCES ___________________________________________________________ 14
2.2.1 Build information ____________________________________________________________ 15
2.2.2 Label Decorations ___________________________________________________________ 16
2.2.3 Datapool configuration ________________________________________________________ 17
2.2.4 Report transformer configuration ________________________________________________ 18
2.2.5 Resource Browser configuration ________________________________________________ 18
2.3 PERSPECTIVE OVERVIEW ___________________________________________________________ 18
2.3.1 TestManager Design perspective _______________________________________________ 19
2.3.2 TestManager Debug perspective _______________________________________________ 21
2.3.3 TestManager Datapool perspective______________________________________________ 22
2.4 EDIT_RUN_PARAMETERS DATAPOOL SETTINGS _______________________________________ 22
2.5 SVN SETUP _____________________________________________________________________ 25
3. Test projects _______________________________________________________________________ 27
3.1 PROJECT OVERVIEW ______________________________________________________________ 27
3.1.1 Create Project ______________________________________________________________ 27
3.1.2 Import project _______________________________________________________________ 30
Page 2 of 116
User Guide
Page 3 of 116
User Guide
Page 4 of 116
User Guide
Page 5 of 116
User Guide
1. Introduction
1.1 Terms and abbreviations
This chapter contains information about how to start using TestManager™. Most of the
connected tasks should be done by system administrators, so to have all information in
these topics please refer TestManager™ System Administrator Guide. Here only the key
events will be explained, which can be done by all users – however this may be changed
according to local policies.
In the following document the following terms and abbreviations will be used with the
following meanings:
TM: this is the abbreviation of TestManager™, the main tool
TSC: Test Scenario, the largest unit of the test. A designed testing workflow of a
bank Business Process to reflect the system’s functionality. It defines the users’ tasks
named Test Cases, the input and output data of the function and the required,
expected functioning during the testing.
TC: Test Case, a TSC is divided into test cases, usually means one version input,
authorize, amendment or enquiry checking in T24
BP: Business Process, a unit which is a base/skeleton for similar TSCs in TM. A list
of TCs which to be perform during test process (without input and output data).
ENQ: T24 enquiry
RB: TestManager™ Resource Browser
IE: Interface Engine
1.2 Requirements
TM is an Eclipse and JAVATM based standalone application, which works on different
platforms and software environments. The following recommendations are for a regular use
of the tool, which means a test set of about 4000 TSCs.
Page 6 of 116
User Guide
TM may operate on other operating systems where the Sun/Oracle Java™ is available –
The Core Banking Group has to be contacted if TM is required to be used on a platform not
listed above.
Similar error message appears if Java is not presented on the computer, or Java is not
added to the PATH. In case Java is present, but can’t be included in the PATH, a location
can be given to TM in its .ini file under –vm argument. Please check the Ini section for
further information.
Page 7 of 116
User Guide
1.2.5 Privileges
TM requires the following user rights to work with full potential (can be different users):
Localhost admin
Full right for the T24 Application server
Additional project specific rights might be required.
Page 8 of 116
User Guide
Download requires authorized access, user name and password can be obtained from The
Core Banking Group via an e-mail to tm.support@corebanking.com .
Page 9 of 116
User Guide
1.3.3 Installation
The installation of TM does not require administrator or power user privileges.
The installation needs at least 400 MB free disk space - later on TM can generate a lot of
big-sized execution log files - 100 GB free disk space is recommended.
The Core Banking Group recommends selecting other disk partition than the operating
system partition for the TM installation if possible.
The TM installer is a ZIP compressed file - it must be uncompressed to a new folder (even if
an earlier version of TMhas been already installed on the workstation).
On Windows 7, if the installation and later the use is made with different operating system
user than give full access to the root folder of the TM installation to the operating system
user which will use TM.
1.4 Licensing
TMrequires a valid license to operate. It can be an “online” license or an offline license. Both
can be setup during first start of any TM product.
Page 10 of 116
User Guide
workspace, it will be checked automatically every new start, and if there is a free TM
license, the dialog window won’t appear.
Page 11 of 116
User Guide
1.5 Workspace
First a (default) workspace must be selected or created. It is recommended to create a new
workspace, under the TM folder. Then projects should be imported separately.
Page 12 of 116
User Guide
2. TestManager setup
2.1 TestManager settings
2.1.1 TestManager/Configuration/log4j.ini
The log4j.ini file contains location of the TM log file, which will contain logged items during
usage of TM tool.
The tm2.log file will be created automatically after launching TM.
2.1.2 TestManager/Configuration/config.ini
The default workspace can be set here:
osgi.instance.area.default= D:/TestManager/workspace
It is critical that workspace path must not contain any space characters.
Page 13 of 116
User Guide
‘config’ isn’t a directory name, this is a constant value in Eclipse, always means the
configuration folder’s path.
If the line starts with – it means this is a command. The next row, without – mark, is the
parameter of the command.
Last row defined the absolute path of the log configuration file. TM warns the amendments
after launching in case if the path is not set up properly.
Default workspace can be set up in this file as well, using the following syntax:
-data
./workspace
Page 14 of 116
User Guide
9. Figure: Preferences/General
Page 15 of 116
User Guide
Page 16 of 116
User Guide
Page 17 of 116
User Guide
Switch on/off each tabs from Resource Browser, which is the main console of TM.
Page 18 of 116
User Guide
Additional perspectives are available by menu: Window Open Perspective or using the
Open Perspective icon in top right/top left/left place of the TestManager window
Functions: Open Perspective, Reset Perspective, Close Perspective, Close All
Perspectives
TestManager views are automatically assigned to different perspectives
Page 19 of 116
User Guide
o Test suite: Shows all created TM Suites. It is the content of the design
project’s suites folder with a filter of .ptxml files.
o Test scenarios: Shows all BPs and TSCs. It is the content of the design
project’s scenarios folder.
o Versions: Shows all T24 versions used in the selected design project grouped
by application. For each version it is listed which TSCs are using that.
o AA: Similar to the Versions but AA versions are shown here.
o Enquiries: Similar to the versions but Enquiries are shown here.
o COS: Similar to the Versions but T24 COS are used here.
o Packages: TM package objects are shown here, which are test templates
used in advanced test methods.
o Interfaces: Shows all TM implementations for interfaces. These are version
like layers which help creating interface message contents or check interface
message results.
o Menu: Shows downloaded T24 menus.
o Scripts: Shows all available java scripts, including internal TM scripts.
File Explorer: a system based view of the TM projects
Graphs: a visual view to show execution and regression status of TSCs.
Problems: a list of warnings and java build problems.
Defects: a view to organize and report regression test defects.
Page 20 of 116
User Guide
Page 21 of 116
User Guide
Page 22 of 116
User Guide
Important parameters:
#CLASSIC_LOGIN_PROMPTS: use for classic Globus/T24 login (e.g. COB)
#DATE_PATTERN: for the Globus/T24 date pattern
#DEFAULT_OS_LOGIN_NAME: the login name of the server
#DEFAULT_OS_LOGIN_PASSWD: the login password of the server
#GLOBUS_SERVER: the name or IP address of Globus/T24 server
#GLOBUS_SERVER_PORT: the port of the Globus/T24 server
#GLOBUS_TODAY: the actually date of Globus/T24
#HTTP_HOST: the name or IP address of the webserver
#HTTP_PORT: the port number of the webserver
#HTTP_ROOTPATH: rootpath of the T24 web application on the webserver
#LOGIN_PROMPTS: used for Globus login (desktop)
#OVERRIDE_GLOBUS_SERVER: override the global server Globus/T24 settings
#OVERRIDE_GLOBUS_USERS: override the global users settings
#PRIMARY_INTERFACE: Browser or Desktop
#REPLACE_ONLY: Yes or No. When the processing of interface messages went
wrong a new feature can be used to replace the wrong messages with a new set of
messages without erasing the correct part of the xmlout.
#UNIX_LOGIN_PROMPTS: used for UNIX login
#VERSION_PATTERN: used only for desktop
#T24RXX_XSLT: the T24 version is beeing to be used. The value is defaulted from
Login and user definition window
#DEFAULT_CODE_PAGE: the code page used on the connected environment.
#TXN_COMPLETE: specify custom txn complete text. Multiplescripts can be added
by separating the values by “,”This improvement also supports multi language drill
down actions in enquiries. This is needed to support multi language.
#TXN_VERIFIED: specify custom txn verified text. Multiplescripts can be added by
separating the values by “,”This improvement also supports multi language drill down
actions in enquiries. This is needed to support multi language.
Further parameters can be:
#PHASES: the phases should be listed in the parameter.
#HOLIDAY_YEARS_IDS: needed for automatic fill of DAYS datapool required for
increasing/decreasing working days in date fields, containing list of country codes
and years.
Page 23 of 116
User Guide
#SO_TIMEOUT: the browser timeout can be set here in milliseconds. This is used for
HTTP communication only.
#CHECK_STRUCTURE: If this is set to "true" then the health of the Globus/T24
response is checked, otherwise not.
#RECEIVE_ECHO_LOG: If this is set to "true" then the response echo (i.e. the part
of socket response that contains only the echoing of the request) is always logged.
Otherwise it is logged only in case of error.
#SOCKET_LOG: If this is set to "true" then the low-level socket logger is activated. It
generates the log files under the "log/SocketLog/" subdirectory of the design project
directory (it should be generated to the environment project, so this is a mistake).
#IS_PERFTEST_ON: "OFF" value is used in all cases when not performance test is
beeing to be executed
#ECHO_LOG_LEVEL: has effect on the xmlout logging. There are some
INFO_IGNORE elements which usually contains the following information:
o Status,
o Text (usually the transaction ID)
o User (number)
o UserGroup (name)
o Time
o LogLevel of the current INFO_IGNORE element.
If the value of this parameter is less than or equals to 4 then no INFO_IGNORE
element is written to the xmlouts.
If the value is greater than or equals to 5 than all INFO_IGNORE elements are
logged in the xmlout files.
The default value for this parameter is 4.
#FILE_LOG_LEVEL: has effect on the timing log (short info’s about the start and end
time of a T24 transaction). The timing log is collected in file named in run parameter
#LOG_FILE_NAME (default: .TestManagerFileLog.csv) under the design project
folder.
The #FILE_LOG_LEVEL parameter's value must be numeric.
If this value is less than or equals to 3 then no timing log information is collected into
file.
If this value is greater than or equals to 4 then timing log is generated for the
transactions.
The default value for this parameter is 4.
#ENQ_RESULT_FULL_COMMUNICATION: default process is that in the log files
TM saves only the first page’s screenshot of the ENQ result, because of size
problems. In case the user needs all screenshots it can be set with this key.
Page 24 of 116
User Guide
From a live connection, the actually used TM projects can be checked out, and after
creating new TSCs, or modifying old ones, can be committed back. Once a project has
been checked out from a repository, it is followed constantly in the TM, showing its state
Page 25 of 116
User Guide
compared to the shared one in the repository. Icons are indicating the changes, so the user
can decide if an update or a commit is necessary.
In case of conflict, the user can decide that differences to be updated or committed one by
one. To support this, a repository view will be opened, where the local and the shared
version is shown next to each other.
Page 26 of 116
User Guide
3. Test projects
3.1 Project overview
TestManager organizes work in projects. TM uses two type of projects, one is called
“design” project, which stores all information about design (BPs, TSCs, version/ENQ
schemas, etc.), the other is called “environment” project, where T24 connection information
is stored next to execution results.
Projects can be reached in TestManager Design perspective, RBs Projects tab, where
project can be created, imported or edited. Project name must be unique; TM checks it
during project creation and gives error message in case of conflict.
Page 27 of 116
User Guide
Creation of a new TestManager Design Project can be done by the following ways:
Context menu in the Resource Browser’s Projects tab
o New Design Project
At this step also the Environment Project can be created by clicking the checkbox.
Context menu on Design Project creates a new Environment Project
o New Environment Project
Context menu in the File Explorer
o New TestManager Design Project
o New TestManager Environment Project
Page 28 of 116
User Guide
Icons
TestManager Design Project
TestManager Environment Project
TestManager Design Project – place to create XML Call packages, Business Processes,
Test Scenarios, TestManager Suites, to store local source codes, style sheets needed to
generate reports
TestManager Environment Project – all execution result files are generated here and also
all necessary datapools needed during Test Scenarios execution, which are implemented in
Design Project
In the Resource Browser, the TM Environment Projects are shown under the related Design
Project. The actually used is marked by bold; the activation is done by double clicking on
the needed Project.
All log files from the selected environment project can be deleted by one click from the
Resource Browser. It is also possible backup the logs with the Create Snapshot menu item
from the same RB context menu. The result is a zip file containing all log results from the
log and scenarios folder.
Page 29 of 116
User Guide
Page 30 of 116
User Guide
Page 31 of 116
User Guide
This connection can be manually set in each projects Preferences page, where the project
to be connected can be selected from a drop down list.
Page 32 of 116
User Guide
The selected baseline project will appear under the environment project, one level below,
and with normal text. All possible baseline projects will appear in RB, but only the selected
one is normally visible. Baseline project can be selected with double click too on this list.
Page 33 of 116
User Guide
Page 34 of 116
User Guide
Page 35 of 116
User Guide
Defined users login can be tested individually for Info user and SOR user by pressing Test
button. Pressing “Test all” button tests all defined users login including Globus test users.
Page 36 of 116
User Guide
4. Basic design
4.1 Structural overview – how to plan a test scenario
Basic element of a test scenario is called Business Process (BP). This is the skeleton of the
test, contains all sequences in the correct order, how they appear during the workflow. A BP
covers a complete workflow of a bank product. TSCs created based on this BP can use
sequences which are added to the BP, but not necessary all of them. It depends on the
nature of the TSC – for example a negative TSC which expected to be failed during the first
transaction won’t contain sequences after the first one.
Actual field values will be set in TSC level, where the proper field order and expected
checks can be set too.
Page 37 of 116
User Guide
New sequences can be added to “Phase” named items in many different ways.
By right clicking on it and select “Add new…”
If a T24 menu was downloaded earlier, one or many menu item which represents a
valid sequence (version, ENQ, report) can be added with drag & drop.
Already used versions and ENQs can be drag & drop from RBs Versions or Enquiries
tabs.
TM packages can also be added with drag & drop.
For each sequence in the BP a specific user has to be assigned. This can be a default user.
In this case no extra action has to be done. Default rule is that Default Auth user do
authorization mode sequences, Default Input user does everything else. Allocated user can
be changed in two places. First is on BP level. In this case user allocation will be changed in
all related TSCs. Second is on TSC level, where the user allocation is changed for one TSC
only. Allocated users can be selected from a drop down list which contains all defined users
from Globus Test Users user definition page of the environment. User allocation uses the
nick name of the user, this way the actual T24 user can be different in each environment,
but the design doesn’t have to be changed, only the users table.
TM supports many different connection channels to T24. Default channel is set in the
environment setup where the Desktop or Browser is selected as default. Desktop is a
socket based communication while Browser is a html based communication protocol. During
BP design for each sequence the environment default protocol is selected automatically.
OFS protocol is also supported, but this protocol has to be selected manually for each
sequence where this would be used. For OFS protocol the OS login section has to be filled
with a user who is in T24 group (login promt is in jShell). In this protocol TM creates an OFS
message instead of a socket or a html post and send this OFS directly to T24 through a
dedicated service (e.g. TAP).
Page 38 of 116
User Guide
Page 39 of 116
User Guide
Each screens touched during manual execution should appear in the BP, each with its
technical name. Sequence name and other attributes can be set on the XML Attribute View.
The second mandatory attribute is the mode. It can be:
I(nput)
A(uthorize)
S(ee)
V(erify)
D(elete)
R(everse)
Saving the BP triggers an automatic schema download process, when TM tries to get
structural information for each version, enquiry, COS and AA. With the help of this
information TM can show a T24 look and feel editor to fill input data. TM uses the INFO user
for this task. The schema download communications are stored in a separate folder under
environment project’s log folder. The process of schema download requires the possibility of
opening a new or an already existed record from the given version. In case there is no new
record option for a version but an already existed one can be opened, this record ID can be
used as an “Example ID”, which can be set on RB’s versions tab. This case TM tries to
open the given record, and builds version schema based on that record.
Page 40 of 116
User Guide
TM support the generation of test data from xsl or java. This feature helps to cover multiple
variations of T24 Version fill out with one test case where the different rules of variations
aredescribed by an additional self-implemented xsl or java class file.For instance it is very
useful for AA and LD payment schedules.
Technical help for implementing the element:
A new >>PLACE_HOLDER<< element can be added to version and enquiry design
in the xmlin. One case decide to provide an xsl file or a java class file.
For the xsl, the file should be in the .stylesheet folder and set the input extension to
xml.
For the java the file should implement the IGenerateXmlElement interface.
Parameters can be added to the PLACE_HOLDER element which will be passed to
the java or to xsl.
When the test case is executed the PLACE_HOLDER element is replaced with the
result of the xsl transformation or the result of the generate method of the java class.
Page 41 of 116
User Guide
The created XMLIN file opens automatically in the editors “Test scenario” tab. It has the
same structure as the BP, but it is “empty”. To add values to fields or ENQ search criteria,
first an Input data should be created to the proper sequence. Adding a new Input data and
double clicking on it will open automatically the Test Case View, where the selected
sequence can be edited. In case of a version a T24 look and feel form appears where the
tabs and fields of the selected version can be seen. To add a value simply fills the first
column with any fixed data. TM will fill this field with this value.
For easy navigation TM offers a search panel where a field name or a part of it can be
entered. Then TM focuses automatically to the first match. If this is not the required field, the
field name has to be given more specifically or by clicking the “next” button TM jumps the
next match.
All kind of fields can be filled, from a single value field to a multivalue field, or multivalue
group, dropdown list fields, radio buttons or multiline fields. Multivalue fields are shown with
a red box in TM editor. By clicking on it a new multivalue field appears, if the previous field
has any value in it. In case only a later field has to be filled, a #IGNORE() helper value can
be used. See more in helpers chapter. Dropdown fields and radio buttons appear as a
single value field. If the schema contains the possible values, TM also offers them during
design time. Multiline field can be designed with a help of #ML() helper.
In some cases T24 automatically generates a deal slip during a transaction commit. TM can
show this deal slip as a T24 Report object, but this check has to be designed as an attribute
of the version instead of a T24 Report sequence in the BP. TM automatically opens the deal
slip if the Deal Slip attribute is true, based on the information T24 shows during the version
commit. The result appears as a separated test sequence in the log, but as explained
before it doesn’t have to be designed upfront.
Similar to the deal slip TM can show a delivery preview connected to a transaction. This
step doesn’t have to be designed as a single sequence in the BP either, just as for the deal
slip, but a specific attribute has to be set instead. The result appears as a T24 Report
sequence in the log.
TM supports capturing and checking status bar messages for each window. This can be set
through an attribute similar to deal slip.
Page 42 of 116
User Guide
For functional test expected values should be added to each field to check if the system
works well. These values can be filled in the second column. TM will check field contents
against this given value, and indicates error in case of any difference. Field value can be
checked before or after the commit. If a reopen transaction mode is set on (the verify
attribute of the test case is true), TestManager™ will check the field expected values on the
reopen version, which means after the commit. If there is no reopen mode then expected
values will be checked before the commit. Reopen mode shouldn’t be used for AA and
multi-legged versions. Expected values in these cases should be checked on a separate
test case (extra See mode).
Expected values can be texts, numbers, fixed data or calculated values.
For each version field TM can check it’s enrichment, the “comment” text appears next to the
field value. This check works similar as the field value checks, except this expected value
has to be set as a field attribute.
TestManager recognizes dynamic schema changes such as hot field changes during
version execution. In case a hot validation changes another field as hot validation field, TM
will handle it properly when reaches that during execution.As the version design may
change at run time (new fields may appear after filling special fields), hot field recognition
must also be dynamic. Hot field attribute is detected from the last T24 server response after
each Post+Response communication.Enquiry results can also be checked in many ways.
There can be expected values set for the number of rows in the result. Default result is one
or more rows, but can be set to no result, or a specific number of rows.
For each row TM can check field values in the second level filter. In this case TM checks the
expected value for all fields in the selected column, so in this case best practice is to have a
Page 43 of 116
User Guide
single row as result. To get this one specific row to be checked a second level filter option
helps to find the requested row. TM can create many second level filters from a single
executed enquiry, all based on the original result. This way any number of rows can be
checked. It is important to remember that if more than one second level filters are designed,
no popup menu actions should be used!
For better understanding TM can filter empty rows from enquiry result in the log. This option
has to be set in the enquiry editor.
TM supports check of all fields in the enquiry result header. There fields appear among the
second level filter column names, but with all capital letters. Expected value has to be set
similar as any other field in rows.
T24 Report content can be checked with enhanced regular expression commands. Search
patterns can be created with regular expressions combined with TM helpers or string
functions. In these patterns groups can be defined with the help of ‘(‘ and ‘)’. For each of
these groups expected values can be added which can also be a regular expression but
also a fixed value. With the help of this method even a specific SWIFT tag can be checked.
TM supports multiple Reports as result of save as action used while iterating on a datapool
with a package.The resolution is to use the postfix value defined as a parameter in the
package itself in the meaning that postfix the report file name with that value.
There would be the following two options:
if there is any postfix parameter used in the package, then the same value will be
used also in the report file names
if there is no postfix the same file name will be given as currently
Page 44 of 116
User Guide
In case of non-english T24 users the Enquiry Test Case view filters are displayed in English
and non-english language as well. Use the correct filter to test and evaluate the expected
result.
TestManager supports unicode character encoding. Default code page is ISO-8859-1 and it
can be configured dynamically in its .ini file.
Page 45 of 116
User Guide
environments. In case of using fix dates it requires sometimes hard efforts from local IT who
creates test environment, because the environment must be on a specific date, or has to
have some specific settings, etc. Instead of using fix dates which have to be maintained for
every execution TM offers the usage of relative dates with the helper: TODAY. This helper
refers to the date of the current environment, and this “base” date can be shifted in design
(e.g.: Today+1Y, Today-5).
A different date handling calculates based on the connected environment’s holiday table.
These are the #DAYS helpers, where in design references are for the logical test date. The
DAYS datapool links the logical dates with actual calendar dates. A built in java script fills
this datapool from the selected T24 environment. A specific helper can calculate differences
between these logical dates, and tells how many real days are between two logical dates.
Helpers offer solution for special set fields, like “multi-line” input, or specific account-, and
transaction ID formats. There are also functions which help in value calculations when an
expected value can be calculated or combined from more than one different other fields or
just create a random number.
Page 46 of 116
User Guide
Page 47 of 116
User Guide
result, then the first level selection doesn’t have to be filled, since that have been already
executed by T24. Only second level selection should be filled this case (include popup
menu action).
To get the proper part of the COS selection process guides the user from up to down. This
means that first the frame container has to be selected, then if there are several possibilities
in a frame (like other frames), then select a level deeper as long as the required version or
enquiry is reached. TM offers these containers automatically. They are downloaded as COS
schema, similar then a version or enquiry schema.
Every area touched during execution has to be a separated COS sequence in the BP.
Page 48 of 116
User Guide
Page 49 of 116
User Guide
5. Basic execution
5.1 Execution with XmlinExecutor
During design time it is important to check from time to time the “quality” of the design, and
check if the TSC really does what it should be. For this purpose TM offers a special
execution control system where a TC can be quickly executed and then analysed. This is
the XmlinExecutor suite, which is a “template”, it will execute always the current command,
and so the content of the suite is automatically changes every time. It can be controlled with
four icons from the last section of the icon bar, or from RB context menu. This method is not
capable for complex executions, parameterization is limited, which means that execution
won’t change phase or day. It will stop in the end of the phase it was started.
There are two prerequisites for using this method:
valid environment connection setting in the ENV project
all opened items in the Test Case Editor must be saved. TM will offer a save
automatically before the execution, but this time there won’t be a chance to see the
content of the modifications, just the files to be saved.
The four control icons can be used inside the editor area, when the Test scenario tab is
opened. Standing here on any of the sequences will make these buttons available. The
buttons will do the following:
Continue: this button is enabled only if a part of the result has been created, and
there is anything which can be continued. It is not important where the cursor stands
in the time of the command, because this time TM finishes the last opened phase of
the TSC.
Step over: this button will execute the selected TC only. It is important to consider
that in case of a multi-legged transaction or a popup menu ENQ this execution
method is not working well.
Continue and stop: this button is enabled only if a part of the result has been created,
and there is anything which can be continued. It continues the execution until that TC
which is selected in the time of the start of the execution.
Start from: this button starts the execution from that TC which is selected and
executes everything until the end of the current phase.
XmlinExecutor can be used from RBs Test scenarios tab too, but from here only the whole
day1 phase “Empty” can be executed, and step by step execution is not possible. However
from here all TSCs connected to a BP can be executed with one click (start execution on a
BP).
Page 50 of 116
User Guide
Page 51 of 116
User Guide
6. Log analysis
6.1 XMLOUT, IOXML
Execution result appears in two main log file, the Xmlout and the IOXml.
The Xmlout contains the result of the TSC (Xmlin). It has similar structure than the Xmlin
which helps to locate a specific part of the TSC. It gives information for each TC, number,
name, mode, Input values, system responses, override messages (system warnings) and
commit statuses. It also contains the results of checks, indicating with colouring places with
difference or error. All version fields appear in this log as well as ENQ results or T24 reports
and Interface messages.
This log can be used as base for regression test; in case a baseline is available with the
compare to baseline button a compare can be started. After that only the differences
between the two execution will be coloured, not the functional errors. This means that while
a failed commit is coloured with red in functional mode, if it was wrong also in the baseline,
it will be green in compare mode.
Meanings of each colour are the following:
green: functionally ok, worked as expected.
yellow: TM warning, format change (e.g. T24 changes the format of the number
input, or date)
brown: handled system error or anomaly, like opening already existed record instead
of new
light red: expected value check failed for a field.
dark red: execution error, a system exception or other not expected anomaly; error
happened most probably on T24 side
black: design error occurred during execution, the error happens on TM side (e.g. a
datapool is missing, used version schema doesn’t match on the one in the
environment and a not existing field wants to be filled)
Page 52 of 116
User Guide
The IOXml contains information about the surrounding of the execution. It shows login
information for each user used during the execution, and a top level result of each TSC
executed recently. This log is linked with the Xmlins created for TSCs, and with a double
click they can be opened.
Page 53 of 116
User Guide
Xmlouts can be opened in TestManager Design perspective, when a TSC is opened in the
Test Case Editor. The last tab opens the corresponding log result.
IOXml can be opened from the Log folder browser view, when a suite is opened in the Test
Case Editor.
Page 54 of 116
User Guide
6.3 Graphs
Graphs view shows a visual statistic of the whole project, or of a subset of it. Selecting (click
on it) an item in RBs Test scenarios tab gives the “root” for the Graphs statistics, and will be
updated automatically.
There are two pie charts, one show functional status, the other is regression status. This
last one contains “relevant” information only if a baseline is available.
Page 55 of 116
User Guide
Another log file called “.log”, located under “workspace\.metadata”, contains TM exceptions
and some other critical errors.
In case of reporting any discrepancies, please attach these log files too, or at least the
corresponding part from them.
Page 56 of 116
User Guide
7. Advanced design
7.1 Packages, parameters (Input, Output, Local)
Packages are collections of versions, enquiries or Interfaces which are connected from a
certain point of view, and should be executed together. It works as a template, because it
can’t be executed on its own, an “external” BP must “call” it. A pack can be used many
times with different input data, what is common is the TCs to be used. A good example for a
pack is a version which needs to be authorized, so put together the Input version and the
Authorize version.
Page 57 of 116
User Guide
Parameters can be Input or Output parameters. To create them open the packs BP in the
Test Case Editor, and right click on the Parameters item. There must be a separate
parameter for each field which should be used in the pack.
Input parameters are used for transferring values into the pack, while output parameters are
moving out data. There is no other way to get values from the pack, just through
parameters.
Page 58 of 116
User Guide
After creating all required parameters in the BP, they will appear in the Xmlin as well. In the
next step of design these parameters must be connected to the fields where they should
give their value with the #PARAM helper as field value, or assigned them to fields where
values should be taken with the #ASSIGN_PARAM helper in the expected value field. All
helpers can be used inside the pack, but they will “see” only inside the packs content.
Page 59 of 116
User Guide
When it is called in BP its main characteristic is the multiplicity. It can be set here how many
times this pack should be called at that given point.
Page 60 of 116
User Guide
Page 61 of 116
User Guide
Page 62 of 116
User Guide
7.2 Datapools
Best way to transfer data between TSCs is datapools. Datapools are mostly file based
storage places connected to the Environment projects. They can store data created during
an execution or can keep design data used for TSC input.
They can be managed on the TestManager Datapool perspective. On the left panel there is
the Datapool navigator, which shows all Environment projects and the datapools inside.
Selecting a datapool will open Datapool view where all information connected to the
selected datapool can be seen and in some cases modify. The content of a datapool can be
edited in the Test Case Editor on the top right panel.
There are six types of datapool:
Hash datapool: it is a key-value type of datapool, data can be read and write to it
during an execution. It is file based, which means that after a normal execution
datapool content will be written in file and can be used later.
Table datapool: it is an indexed table, where one row stores data for one iteration. It
is used for design purposes, where data is put in datapool during design time. In
execution it is just read and used as input data. It is a file based datapool.
Excel datapool: this is a variation of table datapool, it is a link to an excel sheet for
better design purposes. It is easier to manage data on it, and used for input data, just
as a table datapool. The excel file location can be a fixed path or a relative path
calculated from the environment project location as root. The file path can be
changed anytime.
JDBC datapool: this is a variation of a table datapool, it is a link to a database table.
FIFO datapool: this is a virtual datapool, exists only while TM is running, so any data
stored in it will be lost when TM stops working. It is used for Interface message
handling.
Remote datapool: this is a link to another datapool, which can be in a different project
on the same workspace, but can be located on a different PC as well.
Datapools can be read and write with helpers:
#DP: this helper reads a value from a datapool. Syntax is: #DP(‘datapool
name’,’key’,’column name’). For key there are two other words to be used:
o #USED can be used in a table datapool, and refers to the row where the index
points at that moment.
o #NEXT can be used in a table datapool, and refers to the next row where the
index points at, then moves the cursor.
#DPP: this helper puts data to a datapool. Syntax is: #DPP(‘datapool
name’,’key’,’column name’). This helper can be used in a fields expected value. In
case the key doesn’t exist, TM will automatically create it. There is one special word
for key:
o #MULTI can be used for table datapool where a column of an ENQ result can
be stored, not just one value.
Page 63 of 116
User Guide
There are some technical datapools which are created automatically with the environment
project:
EDIT_RUN_PARAMETERS contains technical parameters connected to the
environment
TransactionID stores all values which appeared as Transaction ID during any
execution on the environment. It can be used to filter “our” transactions from any
other content of the environment.
EDIT_GLOBUS_TEST_USERS stores user settings for the environment.
Datapools contain execution data therefore they are important to be backed up together
with the log results so in case of a restore all data will be available. This backup can be
initiated with a manual snapshot command, which creates a zip file from the datapool folder,
postfixed with the date and time of creation.
Page 64 of 116
User Guide
The way in which TestManager learns the AA schemas is not the same as how it
learnsVersions, for this ones, a series of multiple steps are performed which results in a
properly created schema of the desired AA.
TestManager recognizes AA versions (both arrangements and activities) when they are
opened directly from a Composite Screen resulting an enquiry popup menu action or
opened as a 2nd leg of a normal version.
TestManager uses the AA Product Catalog for both AA schema download and AA TSC
execution. By default the core Product Catalog is taken. We also support the Bank specific
Product Catalog(s).
TestManager uses the following enquiries in order to download the AA Product Lines,
Groups and Products possible values referred in the T24 standard Product Catalog:
product line: %AA.PRODUCT.LINE
product group: %AA.PRODUCT.GROUP
product:%AA.PRODUCT
These Enquires can be overridden in the datapool AA_PARAMETERS using the following
keys in case the scope is to test AA product in a Bank specific and customized T24
environment:
product line: #ENQ_NAME_OF_PRODUCT_LINE
product group: #ENQ_NAME_OF_PRODUCT_GROUP
product: #ENQ_NAME_OF_PRODUCT_CATALOG
If there is no value defined for these datapool entries or they are removed from the datapool
AA_PARAMETERS then the T24 standard Product Catalog enquiry names are used as
default.
After having the schema of the product, to get schema of the corresponding activities, a new
key has to be put in the datapool. It looks like the following: “[product name]-
ARRANGEMENT-ID”, where [product name] has to be replaced with the current product.
There can be a separated key for every product. The value must be a valid arrangement id,
where the selected activity can be performed on. Again, TestManager will just initiate the
activity, but never commits.
7.5.1 AA datapools
TestManager uses two helper datapools for storing the required data, “AA_PARAMETERS”
and “EXAMPLE_IDS”. These datapools are automatically created for each new
TestManager environment project.
AA_PARAMETERS - After a successful connection to AA product line, product
group and products this datapool is filled out automatically with all relevant
information.
Page 65 of 116
User Guide
In case not the standard Product Catalog needs to be used and/or TestManager doesn’t
succeed with automatic download of Product Lines, Groups, Products etc. the following
parameters can be defined by the users in AA parameters item using Preferences window
in order to help TestManager. All changes done on AA Parameters item of Preferences
window are automatically written into AA_PARAMETERS datapool. There are hints for each
variables as well giving additional information about their usage.
Page 66 of 116
User Guide
Page 67 of 116
User Guide
Page 68 of 116
User Guide
Page 69 of 116
User Guide
2. Select first product line, then product group then the product. For all case
TestManager fills the dropdown list with the proper values. It may take some time to
update the list as the values are retrieved directly from T24 first (cached after
successful retrieval for better performance in the datapool AA_PARAMETERS).
If no group and line values are provided then all AA Products will be available in the
choice list. Some products do not have group and line parameters and using only
product value is recommended for these cases.
3. Change the mode to “New Arrangement”, “Simulate” or any other available value
from drop down list. (This step can be skipped if the AA was dragged & dropped from
the AA tab of the Resource Browser).
Page 70 of 116
User Guide
4. Saving the Business Process triggers download the AA multi version schema from
T24.
5. In some cases when TestManager cannot automatically download the AA schema
and design error is displayed in the Resource Browser, example Id usage or the
“Paste example HTML source” context menu action is recommended. Go to the AA
tab at the Resource Browser, select the New Arrangement under the mode, right
click on it to show the context menu and select the “Add Example ID” (or “Paste
example HTML source”) option.This will show a popup window where you should
paste a valid ID of an AA product that you wish to design. Both existing AA
identification and html source can be retrieved manually from T24 browser. For
HTML source there is need to open the AA transaction than choose View Page
Source item from right click menu on the AA screen, than select its content and paste
into TestManager. As result of paste, the html file is saved into Design project
.descriptors/browser folder. In all cases when T24 has been changed by adding new
functionalities impacting the current AA transaction, manual refresh of HTML file is
needed in TestManager. Using HTML source is not affected by database restore
case in the meaning that schema download still succeeds after T24 database.
6. Finally click on the “Re–download design” from the context menu and wait for the
schema download action result.
Remark for upgrade to TM2.6 In case of updating TestManager from older release (TM2.5
and below), please add each example ID again for all AA schema using the old
AA_parameters datapool example ID list (storage datapool was unified with normal
Versions). After that the example ID list can be deleted from the datapool
AA_PARAMETERS as it is generated in a new format into the EXAMPLE_ID datapool.
In TestScenario level AA version looks different than standard Versions. Version editor is
opened separately for each sub-version, but only when the sub-version or main version is
selected, not any level higher as for versions. For all sub-version the corresponding schema
Page 71 of 116
User Guide
appears in the editor. Fill the field values and expected values the same way you do for the
T24 versions.
On the main version the customer, currency and the effective date fields have to be filled.
In case there is an error message received like „Field doesn’t exist on the form” and the
reason is that to be checked fields do not have name attribute in the html code either than
we recommend to check them in different mode. (eg. A, New Arrangement etc.)
If all modes result the same error than there is no option to check them with TestManager.
Page 72 of 116
User Guide
While working with AA activities it might be faced on the challenge of reaching to an activity
that is not listed under the AA Activities list shown in Resource Browser AA tab.
TestManager is able to reach for such kind of activities via Drilldown, to do so the first thing
needed is the name of the Activity to reach for and to get this name the process has to be
started manually till the screen of the activity that need to fill out and its name can be read
from here.The name of the activity follows the pattern of PRODUCTGROUP-ACTIVITY-
NAME, for most of the activities it will be shown at the top of the activity, however for those
who does not (like some payoff simulations), it is contained within one of the subversions of
the activity.
Page 73 of 116
User Guide
After getting the name of the activity,one of the activities from the activity list of the AA has
to be drag and drop than replace the product name and the mode of the activity. The name
should be the onepicked before manually.
NOTE: it is recommended to leave the product name follow by the # sign so the new activity
is grouped under the product properly.
After performing the actions mentioned before and saving the Business Process,
TestManager will attempt to download the schema, however since the activity is not listed,
we need to provide the schema which we do by copying the HTML source from the AA
transaction screen from T24 browser.
Page 74 of 116
User Guide
And pasting it to TestManager by right clicking the added activity and selecting the “Paste
example HTML source” from the context menu.
After we save TestManager will generate the schema based on this example HTML source.
TestManager supports automatic company change during AA creation in the same way as
T24 does. For the time of one transaction action (like an AA Activity, or an AA version
Authorization) T24 automatically transfers the user to the company where the record is
booked.
Page 75 of 116
User Guide
On user side changing the company is "invisible", only in record header is written that it is
another company, but no action has to be done. After closing the transaction window user is
back to its original company.
7.5.9 AA Troubleshooting
In case the Product Line and/or Product Group and/or Product schema download fails in the
meaning that these variables do not get any value in the XML Attribute View for a T24 AA
type of TC, than is recommended to check manually whether the default AA Enquiries result
proper answer. If not than it means that different Enquiries need to be used for schema
download and these have to be given in the AA_PARAMETERS datapool’s variable. There
is also option to configure the schema download detailed login by adding the -
Dcreate.schema.download.log=true in the TestManager 2.6.ini file stored in the
TestManager root folder.
In case the product has to be relearnt, this action can be selected on the modes part of the
product on the AA tab. For each mode the re-download has to be performed one by one.
Downloading AA schema takes some time, significantly longer than standard versions or
enquiries. Please check the progress view to follow ongoing operations. Please keep in
mind that until the schema is not downloaded new test scenarios will not perform properly.
Schema errors are displayed in the editor and also in resource browser’s design error
column. Wrong schemas often cause execution errors and may have effect on other
scenarios executed in the same session.
Page 76 of 116
User Guide
8. Complex methods
8.1 Datapool Iteration
This method should be used when a TC needs to be executed many times in a TSC. It
works very similar than iteration with local parameters, but this time the iteration will be
executed only on one sequence of the BP. For example if many different accounts have to
be created for the same customer, then iteration on the account creation is a good choice.
Iteration can be done on any elements of the BP such as versions, enquiries, interfaces,
reports and packages. In case of iterating on a package TM will execute the whole content
of the pack. The numbers of iterations are depending on the connected datapool: each row
of the datapool represent one iteration and contains the “changing” data.
For iterating on datapool first the datapool itself should be created. It contains those fields
where data changes in iterations. Datapool must be a table-like datapool (table or excel),
where each column represents a field, and each row a different iteration.
Set up iteration in BP, first the multiplicity value should be changed for the TC to be iterated
to “…iterate on datapool”. Next selecting the TC in the Xmlin; in the XML Attribute view fill
the datapool attribute from the drop down list with the datapool to be iterated on. Field
values in the TC which are changing should be connected to the datapool with the
#DP(‘datapool name’,#USED,’column name’) syntax. TM automatically goes through the
datapool and executes the TC with each row.
In case the iteration goes on a package it is important to set the postfix parameters to keep
all logs of the iteration and avoid log overwrite problem.
Page 77 of 116
User Guide
Page 78 of 116
User Guide
8.2 XPath
In case there are more than one Input Data for a TC, common helpers may have trouble to
locate a proper value. This case XPath expressions should be used to find a value. TM
allows to use XPath 1.0 expressions and functions. Syntax is that field value should start
with “=” then comes the expression.
All helper references are XPath expressions after all, and are evaluate on the Xmlout log.
To help creating manual XPath expressions TM has a view called XPath-View, which has
the possibility to evaluate immediately the expressions, so the result is immediately seen.
XPath functions are also commonly used mostly the string manipulation functions, like
substring or concat. They have the standard XPath syntax, and all combinations are
supported which is allowed in XPath 1.0 standard.
Page 79 of 116
User Guide
Phases used in BPs has to be listed in EDIT_RUN_PARAMETERS datapool under the key
#PHASES. Phase names have to be listed here in the exact order they are coming during a
day. TM will locate log results by this order, and will be able to put results in a correct order.
A normal execution executes phases, all TCs in the selected phase for each TSC in the
execution list, then phase has to be changed manually to execute all phases in the TSC.
That is the job of the main suite (see Advanced execution).
Phases can be repeated, and TM will replace the log section of the phase. It is important to
fill #PHASES, because TM will find the location of the phase based on this list. In case of
the phase which is repeated is not in the list, TM will put the phase in the end of the day
removing any possible results from later days.
8.3.2 Days
TSCs are planned in day structure. Most of the complex and end-to-end scenarios are
covering several days. To separate test design from the real calendar in TM there are
logical days. Beginning of the test cycle represented with day1, and then all other days are
relative days from this day, like day2, day3, etc. In every execution TM reads the current
T24 date and replaces all date expressions based on that value. To avoid conflicts with
bank working and non-working days, there is a test convention that in automated test
Holiday table should be empty in T24 environment, meaning that only weekend days are
holidays. In addition, day1 should be a Monday, and test plan is done according these
conditions. This means that – considered T24 COB automatism – actions are designed on
day1-5, then day6 and 7 are always empty. In T24 COB of day5 automatically jumps to
day8 because day6 and 7 (Saturday and Sunday) are holidays. Keeping these conventions
will make sure that test execution will always work without serious maintenance work.
Page 80 of 116
User Guide
New day can be added similar way that phase, from context menu on a day item in BP.
Value is mandatory for day item. An empty phase is automatically created for each new day.
Page 81 of 116
User Guide
Additional information on supporting AA transaction design and execution using T24 user
with non-english language can be found in chapter 7.5 T24 AA Automation.
Page 82 of 116
User Guide
Page 83 of 116
User Guide
It is possible to drop a specific variation (row in the parameter table) of a test scenario into a
suite.
“Set day” and “Set phase” controls during execution that which day and which phase will be
executed after that point where they are used. They are “global variables” during one
execution, which means that if they are changed once, their value is stored until they are
changed again, but until the first started suite finishes. Default value is Day1 and “Empty”
phase if no other value is set.
Transactor is an item which is a container used for iterations. It repeats its full content as
many times as it is set in its Iteration No. attribute.
Delay can be used at this level between TSCs only. Its value is in millisecond.
Script can be any java code and can have any type of effect. It can execute OS commands
on the application server, but can reset datapools or change their values. It requires high
programming skills to create proper scripts.
Suite can execute another suite. It is good for organizing purposes, moving together TSCs
which are connected to the same product or specification document usually a good idea.
This way they can easily switch on/off before an execution and suite structure doesn’t need
to be changed. It is important that inside (called) suites should not contain “Set day” or “Set
phase” items because their change will have effect in the caller suite too, and then it will be
impossible to control the execution. The called suite’s day and phase value comes always
from the caller suite.
All items in Scenario have an Enable/Disable context menu attribute where the actual
execution’s scope can be put together. It is easier to disable items for some executions than
Page 84 of 116
User Guide
remove them, because they are usually not put back to the suite later and will be skipped
“forever”. In disabled status they will be seen in the suite but also visible that at the moment
they are skipped.
Page 85 of 116
User Guide
78. Figure: A Main suite with execution result in the Log Folder Browser for each phase
Page 86 of 116
User Guide
11. Reporting
11.1 Reports from execution log
Final stage of any testing process is the reporting when the results are presented in a user
friendly format. TestManager offers two different types of reports divided by the source. One
group are the “stylesheet-based” reports which generate reports from execution log results
(xmlouts). The output format can be HTML or PDF.
Report generation can be started from RBs Test scenarios tab from the context menu
Reports/Create report… This opens the wizard where the required report should be
selected from a combo box. Reports will be generated for all TSCs which have execution
results and are under the selected region. Multiple selectionsare possible, as selecting
folders.
There are several pre-defined reports with both types of output formats:
Report PDF/HTML report focuses to sequences with TEST and CHECK type.
Sequences with Preparatory type are shown only the basics. For Test type
sequences report contains all information. Result is coloured to highlight errors and
defects. In case of browser execution this report contains T24 screenshots for
versions and enquiry results.
Report HTML screenshot contains the TEST and CHECK type sequences with all
screenshots of the browser communications next to the table data like in the previous
report. This means that this report is valid only in browser mode. Screenshots are
supported in HTML output only.
Page 87 of 116
User Guide
Report with menu HTML is a report with a menu to navigate between sequences. It
also contains filtering option to show/hide steps. Report contains all information from
the execution. It has only HTML as output format.
The following Project and Test Cycle relatedgeneric information is generated in each Birt
report:
Project
Test cycle
Cycle schedule
Test environment
System version
They need to be given in the RUN_PARAMETERS datapool (#projName, #testCycle,
#testStartDate, #sutEnvironment, #sutVersion)
Page 88 of 116
User Guide
Report generation can be started from RBs Test scenarios tab from the context menu
Reports. From this menu a valid BIRT report can be selected. Multiple source selection is
also possible in the same way than stylesheet based reports.
Execution status report contains information about how many TCs of the scenario
has been executed and with an execution statistic of error/warning numbers.
Overallreport contains summary information about the executed tests with the
possibility to select the required details like Show coverage (Yes/No), Show
execution results (Yes, No), Show error summary (Yes, No).Regression status report
contains information about the scenario execution compared to a selected baseline.
Shows the covered/not covered differences with statistics.
Test Scenario summary report shows the structure summary of each TSC in the
selected area, including packages, versions, enquiries, helpers used, etc.
Defect report contains information about which defects are linked to the given test
scenario. Mainly it is a list of defects, where it shows for each defect’s description
and what exactly they are covering. In this case an extract is shown in compare
report style: sequence number, name, baseline value, value, baseline expected,
expected (if it has any).
Execution report contains details about the Test Case level execution of the selected
Test Scenario in PDF format including T24 screenshots.
For all reports there is a possibility to save them in file automatically, in this case they will
appear in design project’s generated reports folder, or open them with system editor.
Page 89 of 116
User Guide
12. Interfaces
12.1 Interface design
TM supports system integration test with replacing external systems with test stubs. These
stubs are called interfaces. Interfaces are built up from two parts. One is the design part
which creates a version like layer where fields can be defined; values can be specified for
the messages or expected values for checks.
These design items can be used as any other TC in a BP. There are two different type of
interface by direction: it can be Input or Output. In input interface TM will create a message
to T24, while Output interface analyse a message from T24.
Interface definition files can be created in RBs Interfaces tab from context menu
“New/Interface”. In functional and regression testing Data type of interfaces are used.
After creating a new interface fields (single or multivalue) can be added in the TSC Editor
area. At this point only the existence of a field is important, because TM automatically
orders them. Main rule is that first single value fields are coming, then the multivalue fields.
Mixing them is not possible.
In case of an Input interface the “connection” attribute has to be set, while in case of Output
interface the “datapool” attribute.
Page 90 of 116
User Guide
The Message and Converter columns contain an XML script, which is an easy to learn
language, therefore easy to create new/custom connections. TCBG advanced training
material contains several examples which can be used as base for new connections.
Interface Engine has a main control suite which has to be started before any other
execution starts, then in the end it has to be manually stopped with executing a “Terminator”
suite.
Interface Engine can be replaced with java programs, where connection and converter rules
have to be programmed. This is an advanced way to operate interfaces and requires expert
programming skills.
Page 91 of 116
User Guide
13. Recording
There is an option in TestManager to use the recorder function to record the manual
creation of any transaction or record any specific action what results problems when
implementing or executing with TestManager. The recorded session gives enough detailed
information for further debugging done by developers.
Page 92 of 116
User Guide
In case of HTTP/HTTPS communication recording (this is the case for T24 Browser
interface), the “Http port” must be set. The default is 2008. This is the Proxy port to be set in
the Proxy settings of your browser.
Include ’Disconnect’ in the generated session file checkbox:
The Session file (.ptsession) generated by the Recorder contains a lot of "Disconnect" lines
in case of HTTP recording. These are not needed in most cases, but make the file less
readable, and add a lot of unnecessary checkboxes, sometimes exhausting the handle limit
of Windows. The generations of “Disconnect” entries are optional with using this checkbox.
The Log tab of the Recorder view shows progress, errors, and other useful information
during the recording process.
Page 93 of 116
User Guide
On the appearing LAN Settings panel ensure that the “Use a proxy server…”
checkbox is checked, while the “Bypass proxy server for local addresses” checkbox
is unchecked.
The “Address” should be “localhost”. (Unless the Browser and the Recorder are on
different computers, in which case “Address” should be the name (IP address) of the
recorder’s computer).
The Port and the Recorder’s “Http port” must be the same.
Press the “Advanced” button”.
On the appearing “Proxy Settings” panel ensure that the “Do not use proxy server…”
area is empty.
Page 94 of 116
User Guide
13.3 Recording
Page 95 of 116
User Guide
The session file (which is the result of the recording) can be found in the “session”
subdirectory of the specified package. The name of the session file is composed of the
specified Script name and the timestamp; it has “.ptsession” extension.
Double-clicking the name of the session file, the file is opened in the Session editor.
The recorded communication steps are in separate lines.
The “Note” item refers to a note you explicitly made during recording.
A response can be found under the corresponding request.
In case of Browser (HTTP/HTTPS) recording, you can find more and less relevant lines in
the Session file:
The “Disconnect” items can almost always be disregarded.
The “POST” communications are always important.
The “GET” communications for images (“.gif”, “.jpg, “.png” files etc.) are less relevant.
These serve for displaying constant pictures, icons on the screen, which is not an
essential part of the communication.
Usually the “GET” communications for “.js” and “.vbs” are less relevant too.
Communications with response code “304” (Not modified) can usually also be
disregarded, as they are retrieved from the cache, rather than from the T24 server.
Page 96 of 116
User Guide
Double-clicking on a line of the Session Editor, the details appear in the Log Attribute
Viewer.
In case of Browser (HTTP/HTTPS) recording the upper part of the Log attribute
viewer also contains the HTTP header parameters.
Selecting (clicking on) a property name in the upper part, the property value appears
in the scrollable lower part.
Usually the most relevant properties are the following:
Page 97 of 116
User Guide
Page 98 of 116
User Guide
Defects are collection of differences which are connected from a certain point of view. There
are no rules which differences should be put in the same defect, it depends always the goal
of the test; what kind of differences are in focus, this is a decision the test manager has to
make.
Differences are not necessary mean problem. Many differences happen because
executions were performed different time, or T24 generated different IDs for transactions.
But it can show serious problems, wrong calculations, etc.
Regression status can be seen in RBs last column, where in case compare difference file
has been created, numbers show covered/total differences. In case a “?/?” appears, that
means baseline is available but no compare has been executed. An update statistic solves
this problem, but can take some time if result files are large.
Regression test cycle is finished if all involved TSCs are fully covered with defects.
Page 99 of 116
User Guide
There are two navigation buttons in the icon row which can be used to jump between
differences. It can be selected if uncovered differences can be a target, covered difference
or difference which connects to the selected defect (if there is one selected).
This button is only available if a business process, a test scenario or the execution result is
opened in the Resource Browser. This action packs the necessary files such as descriptor
and schema files, packages, Business Processes and Test Scenarios, all these files as part
of a Design and Environment project. It makes a copy also from tm2.log very useful for
issue investigation.
Collecting the Test Scenarios covering the criteria given by the Requirement
Specification, Functional Specification and the system design
Planning Test Scenarios (TSC) in details
o Field input, expected value
o Version commit, authorization, amend, delete, reverse etc.
o Enquiry, selection criteria, expected record(s) as result, expected value
o Report, expected value
o Interface message checking (existence, content)
o Execution day number scheduling
o Notes to explain each step
Writing Test Specification(s) - output of this phase
o written by business people from Client side or The Core Banking Group test
specialists or together
Accepting Test Specification(s) by Client – prerequisite of design/implementation
phase
Fill in the Test Cases elements of the Test Scenario file with Test Data needed
during the execution
Version’s field (valid/invalid input value, expected value)
Transaction commit (pass, fail, drop, hold)
XML Call package (input, output parameters)
Enquiry (selection criteria, 2nd filter on fields/content/page number/row number,
popup menu action, expected result, expected values)
Interface message (message identification key, expected value)
Direct, dynamic data
Data assist mechanism - Ctrl+Space helper
o # References
• Datapool variable
• Relative days
• Transaction id
• etc.
o Concatenation
o XPath functions
Specification
Test execution Test Case
error error
XMLOUT, IOXML
16. Terminology
automated Test execution cycles while all defects are corrected inside one phase of
regression project. Old functions still work correctly in a new version.
testing Advantages of automated regression testing
Shorter time duration
Safer test (no human factor)
Quality assurance
More complex verification (script programming)
Easier to compare the results of the run
The software can be taught to ignore trivial differences
automated Test automation is the use of software to control the execution of tests.
testing Advantages of automated testing:
Test cases will be saved that means we can run again and again.
When test suite run again the duration is shorter than run manually
Safer test (no human factor)
Quality assurance
The software logs every steps what makes easier to find the error
reason
baseline run Execution of a set of Test Scenarios on a well functioning Globus/T24
Environment (e.g. copy of the live environment)
compare The most important phase of regression testing. The earlier executed tests
are executed again against on the new version of the system and the
results are compared.
control data Result of a set of Test Scenarios which were executed on the new, modified
Globus/T24 environment. Usually the Test Scenarios are the same as used
in baseline run, however there are cases when changes need to be made.
control run Execution of a set of Test Scenarios on the modified Globus/T24
environment. The changes on the System can be
New Globus/T24 release upgrade
Database upgrade
Local development upgrade
Service pack install
operating system patch release
CVS Concurrent Versions System (CVS) is a free software revision control
system. Version control system software keeps track of all work and all
changes in a set of files, and allows several users (potentially widely
separated in space and/or time) to collaborate.
datapool Enable the storage and handling of data grouped together by some
common properties. Often used in exchanged data between testScenarios
or input data for testCase.
day This is a logical day used in the Test Scenario. The first day contains the
prerequisites of the Test Scenario (e.g. customer, account creation) Usually
there is no need for End of day between the first and the second day.
Second day contains the main transaction(s). The other days contain the
checking and the modification part.
defect Used in regression test. The differences between the reference data and
the control data are called defect because it isn’t sure that the found
difference is an error, it could be an expected change.
design project Place to create Test Cases (which are used many times), Test Scenarios,
TestManager Suites, to store local source codes, style sheets needed to
generate reports. This project stands for planning and creating the Test
Scenarios.
Eclipse The Eclipse Platform is designed for building integrated development
environments (IDEs). It can be used to create diverse end-to-end computing
solutions for multiple execution environments.
environment All execution result files are generated here and also stores all necessary
project datapools needed during Test Scenarios execution, which are implemented
in Design Project. This project contains the login settings and user
definitions.
ERT Extended Regression Testing. ERT means the continuation Quick
Regression testing. The extension can be reached by several ways, like:
enhancing the Test Scenarios created during QRT for a longer time
span by modifying Test Scenarios implemented successfully
creating new Test Scenarios with increased complexity (interfaces,
reports etc.) involving more Globus/T24 modules
functional A testing strategy which focuses on whether or not the system has the
testing functions, services, methods and user claims defined by the software
specification.
Globus GLOBUS is an integrated international banking system, which supports the
processes and the operations of banks and other financial institutions.
GLOBUS is a modular package. It is composed of a Core System that
offers all the common operations between the various banking jobs and a
line of modules that covers the different functional requirements of users.
html HyperText Markup Language (HTML). The publishing language of the
World Wide Web. It provides a means to create structured documents by
denoting structural semantics for text such as headings, paragraphs, lists
etc as well as for links, quotes, and other items.
interface A boundary across which two independent systems meet and act on or
communicate with each other.
Interface
Engine Globus/T24 Server
TestManager
T24
DeskTop/
InterfaceEngine 3rd partysystem Browser
3rd partysystem
3rd partysystem
Interface Engine simulates the Legacy systems to achieve the testing of the
communication between Globus/T24 and other systems.
Mantis Mantis is a bug tracking system, a software application that is designed to
help quality assurance and programmers keep track of reported software
bugs in their work.
OFS Open Financial Service is a channel used to mass upload transactions into
T24 directly without user interface.
perspectives A perspective defines the initial set and layout of views in the Workbench
window.
phantom Phantoms are programs what jobs are process messages and forward
messages in a defined way.
phase The logical separation of different phases during a banking day. It makes
the rerun of a part of the day easier and more effective
putty PuTTY is a terminal emulator application which can act as a client for the
SSH, Telnet, login, and raw TCP computing protocols.
QRT Quick Regression Testing. Regression testing executed with low complexity
Test Scenarios on basic modules like Customer, Account and FT. It
provides a numerous coverage for the selected modules. Low complexity
means simple business processes of a short time span (i.e. 1-2 COBs)
without interface simulation.
recorder Recording is a really used function to find the error reason. When you can
do something manually in Globus/T24 but TestManger gives an error you
can record the process and see the communication to find out what's
happening in the background.
reference data Result of a set of Test Scenarios which were executed on a well
functioning Globus/T24 Environment (e.g. copy of the live environment)
regression Regression testing helps to find out whether or not certain changes in the
testing system will or won’t cause problems in those parts of the system which
were not directly affected by those changes. The same Test Scenarios will
be executed again in the modified system, results will be compared and
relevant differences defined as defects.
regular Regular expressions provide a concise and flexible means for identifying
expressions strings of text of interest, such as particular characters, words, or patterns of
characters.
RMI remote method invocation
Standard way for Java applications to communicate with each other
suite A set of the tested code, interfaces, Test Scenarios, execution plans and
other elements of TestManager, necessary for testing.
SVN Subversion (SVN) is a free software revision control system. Version control
system software keeps track of all work and all changes in a set of files, and
allows several users (potentially widely separated in space and/or time) to
collaborate.
T24 TEMENOS T24 is the most technically advanced banking system available
today. T24 is built on open architecture, offers low cost of ownership and
uses established standards such as HTTP, XML and J2EE.
test case Test Case is a basic unit, a simple test step e.g. T24 Version input,
authorize, amendment, enquiry checking, an incoming interface message
creation etc.
test plan A test plan is a systematic approach to testing a system. The plan typically
contains a detailed understanding of what the eventual workflow will be.
test scenario A designed testing workflow of a Business Process to reflect the system’s
(abbreviation functionality. It defines the users’ tasks named Test Cases, the input and
is TSC) output data of the function and the required, expected functioning during the
testing.
test The test specification describes Test Scenarios in details, containing the
specification prerequisites, transaction inputs, amends, checkings, enquiries, reports and
interface messages, each of them defined in proper banking day.
view Views support editors and provide alternative presentations or navigations
of the information in the Workbench.
WinSCP (Windows Secure CoPy) is an open source SFTP and FTP client for
Microsoft Windows. Its main function is secure file transfer between a local
and a remote computer. Beyond this, WinSCP offers basic file manager
functionality