Skip to main content
Jump to: navigation, search

Bugzilla template advanced

TPTP feature: 74841

Author:Paul E. Slauenwhite
Last update:December 15, 2005

Rough workload estimate for design/code/test/doc/ship in person weeks:

Total 9

Requirement summary

Provide a SWT-based Manual Test Client to replace the existing Swing-based Manual Test Client.

Since Hyades v1.0.3, manual test suites may be launched from the local TPTP Workbench and deployed to the local host or multiple remote hosts with UI support via the Agent Controller (see Help >> Help Contents >> TPTP Tester Guide >> Manual testing with TPTP >> Running a manual test). The tester is presented on the local or remote host with the Java (Swing) Manual Test Client containing the launched test suite and its referenced test suite(s) and associated test case(s).

74841 image1.jpg 74841 image2.jpg

The tester may use this Java (Swing) Manual Test Client to:

  • Iterate and navigate (i.e. multi-directional) an expandable/collapsible tree containing the launched test suite, its referenced test suite(s), loops associated test case(s) to view the name and description of each test suite and test case.
  • Enter one of four (i.e. pass, inconclusive, fail and error) verdicts with testers comments for the execution of a test case. Although the tester may enter one or more verdicts per test case execution for later arbitration, only one block of tester comments are persisted per test case execution.
  • End the execution of a lunched test suite at any point during the execution of the launched test suite.
  • Add informational message(s) to the execution result during the execution of the launched test suite.

The current Java (Swing) Manual Test Client contains the following shortcomings:

  • Originally intended as a sample illustrating remote execution of a test type (i.e. manual test).
  • Incorrect title bar content ("Component Test - Manual Testcase Remote Application"):
    • "Component Test" is the legacy name of the TPTP Test project.
    • "Testcase" is grammatically incorrect.
    • "Remote" is not technically correct when deployed locally.
  • Two differently named file menu options and buttons that infer the same meaning (File >> Interrupt execution... and the Interrupt execution... button as well as File >> End execution and the End execution button).
  • Periodically generates erroneous execution events.
  • Swing-based look-and-feel which is different than the SWT/Eclipse/TPTP look-and-feel.
  • No support for rich text and attachments.

User interactions

This enhancement is required for the following reasons:

  • Leveraging the existing benefits of SWT.
  • Resolving the above mentioned shortcomings.
  • Usability improvements.
  • Adding new functionality driven by user feedback to provide an exemplary manual test tooling in TPTP.

This enhancement will not attempt to modify the user interaction with the Manual Test Client, other than changes resulting from fixing outstanding shortcomings and adding new features. One identified improvement of the new SWT-based Manual Test Client is the SWT/Eclipse/TPTP look-and-feel. The new UI will have the same look-and-feel as the TPTP Workbench (i.e. SWT/Eclipse) thereby encouraging ease of use for existing TPTP users.

Design summary

The new Manual Test Client will be written as a Standard Widget Toolkit (SWT) application provide under the Eclipse project.

This enhancement is decomposed into the following work items list in order of completion:

  1. Port the existing Java (Swing) Manual Test Client to a SWT-based Manual Test Client with no new functionality. The first version of this new Manual Test Client will be built as a generic SWT application containing a single view with three panes and file menus. This version would not be aware on its run-time locality (i.e. local or remote) and environment (i.e. Workbench including a workspace and projects). Finally, this version is fully dependant on the Agent Controller for its run-time environment and communication channel to the local TPTP Workbench.
  2. Leverage the Rich Text support in SWT to render formatted text (e.g. HTML) and graphics in the text areas of the SWT-based Manual Test Client (e.g. test case description text area).
  3. Add support for adding one or more attachments to the execution result during the execution of the launched test suite. For example, when a test case fails the tester may want to attach a screen capture or recording to the execution result pictorially depicting the failure state or error message of the System Under Test (SUT). The model, loader and serialization code required for the work item will be donated by an IBM Team.
  4. Add support for adding a reason to the test case execution result. When a tester records a fail or inconclusive verdict during the a test case execution, the reason for the failure or inconclusive verdict is required to interpret the execution result. A reason property currently exists in the Test Model [1] and needs to be exposed for viewing and editing in the new SWT-based Manual Test Client.
  5. Provide small usability improvements including validation of generated execution results to eliminate erroneous/incomplete execution results. The current Java (Swing) Manual Test Client periodically generates corrupt (e.g. missing time stamps), incomplete (e.g. missing verdicts) and/or empty execution results. Typically, these erroneous/incomplete execution results are uncovered later in the test pass such as during reporting potentially causing a loss of execution results. The new SWT-based Manual Test Client will provide a validation step for each user input and again at the completion of the test execution to verify the quality of the execution results. In the event of an erroneous/incomplete execution result, the new SWT-based Manual Test Client will attempt to resolve the erroneous/incomplete execution result (e.g. missing time stamps). Otherwise, a dialog will notify the user to the erroneous/incomplete execution result for manual resolution.
  6. Add support for adding a the following contextual information to a test case execution result:
    • Defect(s) (e.g. one or more defect numbers for failed test cases).
    • Driver (e.g. product build date or driver number).
    • Tester(s) (e.g. one or more testers).
    • Platform(s) (e.g. one or more execution platforms either programmatically set of set by the tester)

    The above contextual information is important and/required to interpret the test case execution result. The

    Test Model [2] will require these identified additional properties as well as the future extensions.

To monitor the status of this feature, consult TPTP Bugzilla enhancement #74841 and associated linked defects for each of the above work items for this enhancement.

Back to the top