TaRGeT - Test and Requirement Generation Tool
Overview
TaRGeT automates a systematic approach for dealing with requirements and test artifacts in an integrated way, in which test cases can be automatically generated from use cases scenarios written in natural language. The use cases are written following a XML schema, which was designed to contain the necessary information for generating test procedure, description and related requirements. Moreover, the tool can generate traceability matrix between test cases, use cases and requirements. TaRGeT does not substitute the test engineers’ role: the tool’s main purpose is to aid the engineers on creation of test suites.
Three major aspects distinguish TaRGeT from other behavioral model-based testing tools: 1) the use of test purposes, provided by test engineers, to restrict the number of generated test cases and to focus on test cases that are more critical or relevant to a given task; 2) algorithms for eliminating similar test cases, reducing the test suite size without significant impact on effectiveness; and 3) use cases written in natural language as system input, which is more natural for engineers when comparing to formal behavior specification languages.
Business Issue / Solution
Software testing has been one of the most used techniques for achieving software quality and reliability. It is an important and extremely expensive software development activity. Studies suggest that testing often takes approximately 50% of the total software development cost. So it is important to automate and improve the productivity of testing activities, ranging from test design to execution.
One of the approaches for automatic test generation is Model-Based Testing (MBT). In order to automatically generate test cases, MBT accepts two main inputs: a formal model of the System Under Test (SUT) and a set of test generation directives, which guide the generation process. PTK, for instance, is a model-based test generator which receives as input MSC models. The bottleneck of MBT is the creation of the SUT's formal model, which requires engineers to have formal modeling expertise.
Our tool was designed to minimize this bottleneck by receiving as input use cases scenarios written in natural language; these scenarios are then used to automatically derive the system model. The tool also provides a GUI for editing test generation purposes and for guiding the user to generate test cases.
Key Features / Functions
TaRGeT's main functionality is the automatic generation of feature test cases from use cases scenarios written in natural language. Supporting this main functionality, TaRGeT features the following facilities:
- Automatic purpose-based generation of test suites, with adequate coverage criteria;
- Elimination of similar test cases according to parameters informed by the user;
- Selection of requirements or use cases to generate specifics test suites;
- Use cases are flexible enough to handle different platforms or domains. We have already used TaRGeT for generating test cases for mobile phones and desktop applications;
- Automatic generation of traceability matrix: Requirements X Test Cases, Requirements X Use Cases and Test Cases X Use Cases;
- A consistency management that allows to compare test suites and keep the integrity of test cases id;
- A Controlled Natural Language (CNL) that defines some writing rules and a restricted vocabulary in order to avoid authors to introduce ambiguities into their test case steps;
- A use case editor that allows to create and edit use cases inside the tool without needing to use the Microsoft Word;
- Exporting test case suites in many formats, including the XML standard for TestLink;
- Friendly GUI to guide the generation processes.
Releases
The following versions of TaRGeT were released according to Motorola development process:
- [Release 1.00*] - contains the basic functionalities for validating the input documentation and generating test cases. The test generation algorithms allow only test selection by requirements.
- [Release 2.00*] - is an upgrade from Release 1.00. The new features are search engine for use cases, selection of test cases by test purposes, and test case removal based on similarity.
- [Release 3.00*] - is an upgrade from Release 2.00. This release offers selection of test cases by use cases, generation of interruption test cases, automatic set up generation, and other improvements.
- [Release 4.00*] - is an upgrade from Release 3.00. This release offers On the Fly Generation, providing the user visualize the test cases before generate; and other improvements.
- [Release 5.00*] - is an upgrade from Release 4.00. This release offers Consitency Management functionality, a feature to control the consistency of already generated test cases if the user makes any modifications in the use case document; and other improvements. From this version, TaRGeT has to be structured into product line.
- [Release 6.00*] - is an upgrade from Release 5.00. This release is still under test and has features like CNL, a use case editor, many formats supported to use case document input (xml, doc) and test suite output (html, xls, xml for TestLink).
* Unfortunately, these files are not available to download yet. As reported earlier, TaRgeT is structured into product line, so we need to know what features you want to use to generate a product. Please contact us through e-mails in the end of the page.
Screenshots and Samples
The figures below are some screenshots of TaRGeT tool.
 |
 |
 |
TaRGeT
workspace |
Test Selection
page |
On The Fly
Generation |
System Requirements
The following software is required to run TaRGeT:
TaRGeT may run in Windows 2000, XP and Vista, MacOS and higher versions of .NET, JRE and Microsoft Office. If you need to run in a special environment, please contact us.
Known Issues
This topic contains known issues which may affect users of TaRGeT:
- When modifying an use case document, it is necessary to close and re-open the On The Fly Editor to load the tests modification (happens with both Word and XML inputs). [Resolved on Release 5.0]
- In the Inclusion/Exclusion tab at the On the Fly Editor, when clicking with the right button of the mouse, the options are shown enabled even if there is no test cases in the table. [Resolved on Release 5.0]
- In the Test Cases tab at the On the Fly Editor, Na aba Test Cases,when selecting a test case to be permanently included or excludes from the test suite, the selected test case is not shown int the generated test suite. [Resolved on Release 5.0]
- In Consistency Management, the suite generated can become inconsistent if the On The Fly Generation Editor is closed and some change is made in the use case documents. To make sure the generated suite is consistent, keep the On The Fly Generator Editor opened while using Consistency Management.
TaRGeT Development Process
TaRGeT has a defined process for external contributors that want develop new features using it. The process document can be found
here. This document set the bounds for each person's roles and responsibilities in the TaRGeT development process so that the collaboration is successful and efficient.
Contact
Please contact the following for any further information:
Paulo Borba (Senior Researcher)
phmb@cinNOSPAM.ufpe.br
Michelle Silva (Researcher)
mcms@cinNOSPAM.ufpe.br