|
-
-
-
Introduction
-
If you have a complete set of test plans, and have designed your test
data base and test cases, what do you need to do to automate the
testing process?
In order to give you a reasonable picture of the requirements for any
test automation activities for legacy application following is an
outline of how one successful test automation tool does it. We
examine test creation, test execution and test validation.
|
 
|
-
Test Creation
-
To help you to properly manage your tests, TALC2000 provides a
"Menu" system (a "Menu" is simply a repository for test data).
The purpose of a TALC2000 "Menu" is to allow you to group your test
cases into logical groupings that correspond to the groupings in
your application software (e.g. data entry, enquiry, listings etc).
You can create as many TALC2000 menus as you wish, and each menu can
contain up to 90 separate test cases.
Before you begin recording your first test case, if you have not
already done so, divide your test cases into appropriate groups and
then create a TALC2000 menu for each group of tests.
Select as the active menu the menu you will require for the recording
of your first test cases.
Test case creation is simple. The test is executed manually, using
the mouse and keyboard. Each mouse or keyboard action that you
perform will be recorded and you will also record your application
software responses to the input you are creating by clicking on a
button in TALC2000's Floating Toolbar. This single action will
record information about the size and location of your test window,
and the text and attributes that are displayed.
TALC2000 creates a character based image of the information displayed
in the window, to correspond with what would be displayed on a
"dumb" terminal.
When you have completed the test manually, the information you have
recorded is saved by a very simple process which allows you to add
details of the test which you have just performed to the active
TALC2000 menu.
As well as naming the test with up to 40 characters of description,
you can also optionally add up to 2,000 characters of additional
documentation for the test, to define the test purpose, the test
environment, any test prerequisites and any other information which
you find useful to retain.
Each test which you record and save should be designed to test a
single function. If you are testing a large application system,
this will result in probably thousands of separate test cases
spread across many different TALC2000 menus.
Once you have recorded your individual test cases, you will then want
to create one or more TALC2000 "Scripts" which will dynamically link
these test cases together for you, so that they may be played back
as a single complete test. This linking process is extremely simple
(little more than "point and click") and requires no programming
knowledge.
TALC2000 allows you to execute one script from within another. This
flexibility means that you can design many smaller scripts to group
together those test cases necessary to fully test a particular part
of your application system. Once these scripts have been defined,
they too can be linked via another script so that a complete regression
test can be executed.
|
 
|
-
Test Execution
-
Test execution is simplicity itself. Just perform the following
steps:
- Make sure your test data base is re-set to contain just the
data required to begin the test run.
- Select from a TALC2000 menu the script that you wish to run
to execute the complete test.
- Click the "Play" button on the TALC2000 Floating Toolbar.
As well as beginning test playback manually by clicking on the "Play"
button, you may also set up TALC2000 to begin test playback at a
pre-defined time, or following some specific event which can display
a message on your terminal. (For example, "End of day completed").
The tests can run unattended, overnight if desired, and the validation
processing can be undertaken after the tests have completed when you
next return to your PC.
Although the above test creation and execution scenario is extremely
simple, about 90% of your tests will be recorded and linked together
for playback in this way.
Where you cannot achieve the required level of test control using
the methods outlined above, TALC2000 provides additional ways of
creating tests, of controlling test execution, and of performing the
necessary validation.
TALC2000 also provides many special features to help with Year 2000
testing. The most important of these is the ability to process date
fields of any type as variables that are evaluated at the time the
test is run.
This feature allows you to create a test case and run it across
multiple different processing time horizons without the need for
any test maintenance. By selection of a single TALC2000 menu entry,
that same test case can be run in your Year 2000 environment, using
the required new date formats for input and output.
Where required, TALC2000 can automatically generate high volumes of
test transactions for you, based on definitions of the transaction
that you provide, and variable data contained in PC text files.
This feature can be particularly useful when it is necessary to
generate high volumes of data for testing screen or report paging,
maximum number of entries in a table, list box scrolling and so on.
To provide additional control during test execution, TALC2000
supports a comprehensive "Event/Action" module. This module allows
you to monitor asynchronously for events which occur during test
playback. These events may be associated with the test, or completely
external to it.
An "Event" is typically a string of characters appearing at some
point on the screen. "Actions" associated with each event can include
insertion of additional keystrokes, starting or stopping playback,
suspending operations, enabling or disabling other events and many
additional functions. You associate an "Event/Action" list with a
particular test case by using the Event/Action entry on the
TALC2000 menu.
Setting up an Event/Action list can be done at any time after the
test is recorded, and does not require editing of the test. The list
is simply added to the test case, and if such a list exists,
TALC2000 will load and process it.
Event/Action processing allows you to check for any condition during
test execution, and return a value to your executing script that
identifies which event has been found. The script may then use this
information to control the path of test execution. (Test execution
paths can also be controlled without the use of Event/Action lists,
simply by making use of the "If any errors" command in the script
processor. This provides a pass/fail result for the previously
executed test, and can be used for the majority of script control
requirements).
TALC2000 also provides access at any point within any test to any
API function contained in any Windows DLL. This allows you to access
any existing Windows routines, or to write special functions of your
own (this will require programming skills) to provide extended
support for very specific test applications.
|
 
|
-
Test Validation
-
Once your test script has completed, the test validation procedure is
undertaken.
As the test is executed, as well as checking in real time the pass/fail
conditions of each test, the results of each test are saved so that you
can review them at a convenient time.
The test validation procedure is fast, and depending on the speed of your
PC and the validation techniques selected, up to about 5,000 test cases
per hour can be completely checked.
The test validation process is initiated by simply clicking on a button
on the TALC2000 Toolbar, and then selecting from the three available
methods of verification processing. The verification process produces
a summary by script of all test cases, and their pass/fail condition.
Where a given test case has failed, the information contained in that
test case may be expanded down to individual validation components
and inspected in a variety of ways to determine what it is that has
gone wrong.
Once an error has been identified, it may be documented, prioritised
and categorised as to the reason for the error.
Where an error has been identified, the tester can optionally provide
some notes outlining how the error occurred and this information can
be printed out together with a copy of the actual test output and
what should have been produced. This information can then be returned
to the programmer who is responsible for fixing the error, to aid in
completely explaining what it is that has gone wrong.
|
|
Testing Papers
      
Tester's Corner
|
|