Testing Tools Project

Project description

The Testing Tools Project provides specializations of the TPTP Platform Project for testing (e.g. test editors, trace/test conversion support), and exemplary extensible tools for specific testing environments. Initially this includes four test environments: JUnit, manual, URL, and automated GUI testing.

These specializations provide optimized editing and reporting experiences for these use cases. In the cases where a unique runtime or an implementation of a testability interface is required, it is also developed in the project. For example, the manual test execution environment provides a remotely managed user interface specifically for collecting manual test progress. This manual user interface is unique from the common execution environment for JUnit and URL testing.

The subsystems that make up this project by extending the TPTP Platform Project, and the components they contain are described below:

For more information on the TPTP project, refer to the project overview.

Subsystem descriptions

User Interface

The User Interface subsystem has the following components:

Name Description
Common Editors Editors for test descriptions, behavior, deployment, and histories are provided over the test model.
Data Pool Editor An extendable editor for test data pools and support for import of volume data.
URL Test An editor for URL targeted testing.
Code Coverage Method level coverage extensions to the table views.
Manual Test client A RCP based application that runs remotely to step a user through and record the results of a manual test case.
Reporting Extension points and usage of SVG and text based execution history reports.
Test perspective A perspective for creating and managing test artifacts, including histories
Automated GUI recorder A GUI recorder for Eclipse IDE to automate regression functional testing
Data Collection and Agents

The data collection and agents are made up of the following components:

Name Description
Component Test Agent An event framework and instance to collect execution results from JUnit and other component based test environments
URL request recorder A proxy based recorder to intercept and capture URL request which can be converted into URL test cases.
Execution Environment

The execution environment has the following components:

Name Description
Execution Harness Common execution environment for test execution
Common Runner API for all test execution environments to implement
Manual Runner A runner to drive and control the manual test client
JUnit Runner A runner to drive and control the JUnit test environment
URL Test Runner A runner to drive and control the URL test environment
Automated GUI runner A runner used to playback recorded GUI actions in Eclipse IDE

What is the communication and process overview of the execution environment?

What are the use cases of the execution environment?

Test Services

TPTP provides a small number of test services which may be invoked by a TPTP test, or by TPTP code running in the TPTP test's process. These services may make calls back to the launching workbench to request a service, or may leverage the TPTP test's agent to amend additional data to the stream of data being collected during the test run.

How do test services communicate with the workbench?

How do I create my own test services?