TaRGeT Product Line


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.


TaRGeT's main functionality is the automatic generation of test cases from use cases scenarios written in natural language. Supporting this main functionality, TaRGeT features the following facilities:

  • Filters to support test cases selection
  • Consistency management feature that allows to compare test suites and keep the integrity of test cases id's
  • 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
  • Use case editor that allows the creation and edition of use cases inside the tool, without needing to use Microsoft Word
  • Exporting test case suites in many formats, including Microsoft Excel, HTML and XML standard for TestLink


Feature Model

Feature Model

* The source code for Test Central 3, Test Central 4, XLS STD, UC Weight, Step ID in Test, Automatic Scripts Generation, Active Flow in Test and Data Mass features is not available because it is protected by a NDA (non-disclosure agreement).


  • TC3 Extractor -> TC3 Output
  • TC4 Extractor -> TC4 Output
  • XML Extractor -> XML Output
  • HTML Extractor -> HTML Output
  • XLS STD Input -> XLS STD Output
  • CNL -> English
  • Import Template -> (TC4 Output | XLS STD Output)


TaRGeT implementation is based on the Eclipse RCP architecture. It is developed as a software product line to answer customers particular needs with a significant reduction of the effort and cost required to implement product variations.

The main responsibilities of the application are distributed into four distinct basic plug-ins:

  • Core plug-in: responsible for system start-up and setting up the workspace and perspective of the RCP application.
  • Common plug-in: implements basic entities to represent use cases documents and test case suites. Beside that, it contains parsers for different input formats and provides support to new implementations for new input formats.
  • Project Manager plug-in: contains operations and exceptions to handling projects, test case generation algorithm, basic GUI components to be extended in the implantation and support for implementing variability to make TaRGeT compatible with different formats of input use case documents.
  • Test Case Generation plug-in: generates test case suites in different formats and provides support to extend TaRGeT with new implementations for different output formats.
The figure below describes TaRGeT's architecture.

TaRGeT Architecture

Product Line Documentation


  • Source Code
    • The currently implementation is at version 6.0 with 36 features in the product line and a total of 32.194 lines of code. It is possible to retrieve in TaRGeT's SVN repository three major releases and one minor release, as well as the history of developers comments indicating the modifications performed in each commit.
  • Implementation of variations:
    • Input: Implemented with Eclipse Extension Points (subtype polymorphism). One plug-in for each input variation.
    • Internationalization Support: Graphical Interface in different idioms. GUI texts stored in properties files.
    • Interruption: Support of interruption flows in the use cases. Implemented with AOP.
    • Test Suite Extractor: Implemented with Eclipse Extension Points.
    • Consistency Management: implemented with Eclipse Extension Points.
    • Test Generation: Two different methods of test generation: On The Fly and Basic Generation. Variations implemented with Eclipse Extension Points.
    • Import Template: Extraction of information present in the header of a test suite to be reused in new suites. Implemented with Eclipse Extension Points.
    • Output: Implemented with Eclipse Extension Points. One plug-in for each input variation.
      • XLS Output: Similarity between variations of XLS formats. Implemented with Eclipse Extension Points + Inheritance.
      • XML Output: Similarity between variations of XML formats. Implemented with Eclipse Extension Points + Inheritance + XSLT transformation.
    • Use Case Editor: Implemented with AOP.
    • Selection of optional plug-in's: Implemented with configuration files pre-processing.
    • Configuration files and some icon paths in source code are preprocessed using Velocity.


The main functionalities implemented in each release are described below:

  • [Release 1 | Version 4.00] - this release offers On the Fly Generation, providing the user visualize the test cases before generate; and other improvements.
  • [Release 2 | Version 5.00] - is an upgrade from Version 4.00. This release offers Consistency 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 on, TaRGeT was structured as a software product line.
  • [Release 3 | Version 6.00] - is an upgrade from Version 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).

Product Generation

TaRGeT's features are selected using the Feature Model Plug-in and the configuration files are generated by the Hephaestus tool. Hephaestus reads TaRGeT's configuration knowledge, pre-processes source code and configuration files and then generates an Eclipse product configuration file containing only the plug-ins related to the selected features. The final product is generated using the Eclipse wizard for RCP products.


-- FelypeFerreira - 10 Feb 2011 -- FelypeFerreira - 09 Feb 2011 -- LaisNeves - 05 Aug 2010 -- FelypeFerreira - 15 Jul 2010 -- MarcioRibeiro - 30 Jun 2010 -- LeopoldoTeixeira - 30 Jun 2010 -- FelypeFerreira - 30 Jun 2010 -- LaisNeves - 30 Jun 2010 -- LaisNeves - 16 Jun 2010 -- FelypeFerreira - 15 Jun 2010 -- LaisNeves -15 Jun 2010 -- FelypeFerreira - 15 Jun 2010 -- LaisNeves - 04 Jun 2010 -- FelypeFerreira - 04 Jun 2010

This topic: TestProductLines > WebHome > ToolsProject > TaRGeTProductLine
Topic revision: r38 - 2015-01-30 - PaolaAccioly
This site is powered by the TWiki collaboration platformCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback

mersin escort bayan adana escort bayan izmit escort ankara escort bursa escort