TestExpert features

A tool for testing client and server applications

TestExpert is a tool which gives an answer on some of the questions which come up when dealing with software test:

  • My application lives in a distributed environment and must implement a communication interface towards a server/client. How can I test my software against an external device which is still in development, doesn’t support all of my features, or is too expensive to buy?
  • How can I repeat previous tests when my software is getting into shape as a result of incremental development steps?
  • How much can I adapt test cases for different test scenarios?
The tool allows a software developer or tester to define all kinds of test scenario’s, execute them, and evaluate the test results. It interfaces with the System Under Test (SUT) through an IP network through which it exchanges message data either directly on UDP or TCP, or through HTTP.

Allow behavioral testing by means of functional test scenarios

In contrast with other test tools TestExpert doesn't rely on a scripting or programming language which the user must learn to develop test cases. The app presents itself as a GUI application in which the user enters the test scenarios in the form of State/Event/Action items.

  • 'States’ represent the different phases in which a test is.
  • ‘Events’ represent the signals which are being sent/returned by the application under test or by TestExpert itself (e.g. a timeout) in a given state during the execution of the test.
  • 'Actions’ are associated with 'events' and define the signals and commands which have to be executed when the event has fired. Actions can have a 'Condition' property that enables or disables its execution.

Possible 'events' that are supported by TestExpert are:

  • Start scenario
  • A message has been received from the system under test
  • A timeout has occurred

The 'actions' which the user can assign to 'events' are:

  • Start a timer
  • Stop a running timer
  • Send a message to the system under test
  • Change the scenario state
  • Give a user prompt
  • Call another scenario
  • Assign a value to a runtime variable
  • Start a communication server/listener
  • Stop execution

During the execution of the test all events which are coming from the system under test, are validated against what the scenario is expecting in its current state. When the event is accepted the scenario proceeds by triggering all the actions that have been registered for the event.

Execution of the test can both be done manually (one test at a time) or in batch mode (multiple scenarios are running after each other).

A powerfull Scenario Editor

TestExpert’s scenario editor allows you to create and modify a scenario. Using the editor is very intuitive as it only requires from the user that he or she selects the FSM item that needs editing and then pressing the required button on the toolbar.

  • Adding a FSM item pops up a view where the user must provide data for one or more properties that are important for the newly created item.
  • Adapting an already existing FSM item is done within a Properties View that is shown when the item is selected.