[[TracNav]] = TRex Documentation = == User Documentation == * [wiki:GettingStarted Getting Started]. * [wiki:TrexInstallation Installing TRex via the update site]. * [wiki:FAQ Frequently Asked Questions] * [wiki:ReportingBugs Reporting Bugs] * [wiki:CompilerIntegration Compiler Integration] == TTCN-3 Refactoring Catalog == TRex is based on our TTCN-3 Refactoring catalog. While only a few of the refactorings are automated by TRex, yet, we intend to implement more of them in future. Until then, you may use the provided mechanics to apply the refactorings manually. * [wiki:TTCN3RefactoringCatalogue TTCN-3 Refactoring Catalog] == TTCN-3 Code Smell Catalog == We are currently collecting TTCN-3 code smells. We intend to maintain an up-to-date version as a set of Wiki pages. * [wiki:TTCN3CodeSmellCatalogue TTCN-3 Code Smell Catalog] == Developer Documentation == Developer documentation can be found at the [wiki:Developers Developer's Corner]. == Publications on TRex == There are a few scientific publications on TRex available: * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=286 Helmut Neukirchen, Benjamin Zeiß, Jens Grabowski: "An Approach to Quality Engineering of TTCN-3 Test Specifications"] An extensive journal article describing TTCN-3 code smells and a test quality model and the corresponding assessment of ETSI test suites. It is partly based on the TESTCOM/FATES'07 paper. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=281 Helmut Neukirchen, Benjamin Zeiß, Jens Grabowski, Paul Baker, Dominic Evans: "Quality assurance for TTCN-3 test specifications"] An extensive journal article describing metrics and refactoring for TTCN-3, their implementation in TRex and their application for improving ETSI test suites. It is an extended version of the TAIC PART 2006 workshop paper. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=278 Helmut Neukirchen, Benjamin Zeiß: "Automation of Refactoring and Refactoring Suggestions for TTCN-3 Test Suites -- The TRex TTCN-3 Refactoring and Metrics Tool "] An extended abstract for a poster presentation at the 1st Workshop on Refactoring Tools held in conjunction with 21st European Conference on Object-Oriented Programming (ECOOP 2007) in Berlin. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=272 Helmut Neukirchen, Martin Bisanz: "Utilising Code Smells to Detect Quality Problems in TTCN-3 Test Suites"] The essence of the Master's Thesis of Martin Bisanz that has been accepted as a full paper at the TESTCOM/FATES'07 conference. The smell catalogue in this paper is slightly revised in comparision to Martin's initial version. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=267 Martin Bisanz: "Pattern-based Smell Detection in TTCN-3 Test Suites"] A Master's Thesis containing a catalogue of TTCN-3 code smells. Furthermore the implementation of an automated smell detection based on the Eclipse Test & Performance Tools Platform (TPTP) is described. (The corresponding TRex plug-ins have not been open-sourced, yet, but will be made available as soon as all scientific results have been exploited.) * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=262 Benjamin Zeiß, Helmut Neukirchen, Jens Grabowski, Dominic Evans, Paul Baker: "Refactoring and Metrics for TTCN-3 Test Suites"] An updated version of our SAM'06 paper. It has been extended for beeing published in the Springer LNCS series. In comparison to the previous SAM'06 paper which has been printed just as SAM'06 hand-outs, in particular Chapter 4 (treating TTCN-3 metrics and TRex) has been updated. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=261 Benjamin Zeiß, Helmut Neukirchen, Jens Grabowski, Dominic Evans, Paul Baker: "TRex – The Refactoring and Metrics Tool for TTCN-3 Test Specifications"] A technical report based on the tool paper accepted for the TAIC PART 2006 workshop. It describes the functionality and implementation of TRex more elaborate than in the TAIC PART paper. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=260 Benjamin Zeiß, Helmut Neukirchen, Jens Grabowski, Dominic Evans, Paul Baker: "TRex - An Open-Source Tool for Quality Assurance of TTCN-3 Test Suites"] A paper accepted for CONQUEST 2006 – 9th International Conference on Quality Engineering in Software Technology. A description of TRex with a focus on metrics. In particular, it describes our latest results on applying !McCabe's Cyclomatic Complexity metric to TTCN-3. (The corresponding TRex plug-ins have not been open-sourced, yet, but will be made available as soon as all scientific results have been exploited.) * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=259 Paul Baker, Dominic Evans, Jens Grabowski, Helmut Neukirchen, Benjamin Zeiß: "TRex – The Refactoring and Metrics Tool for TTCN-3 Test Specifications"] A tool paper accepted for the TAIC PART 2006 workshop -- Testing: Academic & Industrial Conference - Practice And Research Techniques. It briefly describes the functionality and implementation of TRex. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=257 Benjamin Zeiß, Helmut Neukirchen, Jens Grabowski, Dominic Evans, Paul Baker: "Refactoring for TTCN-3 Test Suites"] A full paper accepted for SAM'06 -- Fifth Workshop on System Analysis and Modelling (formerly SDL and MSC Workshop). It surveys test refactoring, provides an excerpt from our TTCN-3 refactoring catalog, and a brief description of some TTCN-3 metrics, metrics-based rules when to apply which refactoring, and of the TRex tool. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=256 Benjamin Zeiß: "A Refactoring Tool for TTCN-3"] A Master's Thesis containing the world's first TTCN-3 refactoring catalog and the description of the TRex refactoring implementation. '''If you like to contribute to TRex, this document is your friend.''' But note that TRex evolved in the mean time and in particular the package or [wiki:PluginStructure plug-in structure] respectively has been changed since then. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=255 Jochen Kemnade: "Development of a Semantics-aware Editor for TTCN-3 as an Eclipse Plug-in"] A Bachelor's Thesis describing the roots of TRex. The implemented on the fly semantics checks do not work with the current syntax tree used in TRex. Hence, semantics checks are currently disabled in TRex. * [http://www.swe.informatik.uni-goettingen.de/pubs/single_pub/index.php?lang=en&pub_nr=253 Wei Zhao: "Entwicklung eines Parsers für TTCN-3 Version 3 unter Verwendung des Parsergenerators ANTLR"] A Bachelor's Thesis in German language describing the first implementation of our TTCN-3 v3.1.1 parser. The parser has significantly changed since then. Hence, instead of reading this thesis, you might want to visit [http://antlr.org/ the ANTLR website] as an introduction to the ANTLR parser tool, and inspect directly the TRex sources and have a look at the [http://www.trex.informatik.uni-goettingen.de/svn/trex/trunk/de.ugoe.cs.swe.trex.core/src/de/ugoe/cs/swe/trex/core/analyzer/rfparser/ current parser implementation]. Note that the lexer/parser described in this Bachelor's Thesis is derived from the [http://www.testingtech.com/ TestingTechnologies] [http://packages.debian.org/unstable/devel/ttthreeparser TTthreeParser]. == TRex Evangelism == If you like to promote TRex and need flyers or a poster, you may use the following material and print it yourself: * [http://www.trex.informatik.uni-goettingen.de/svn/trex/web/wiki/pdf/trex-poster2.pdf Poster describing TRex 0.6.0] (intended to be printed on A4 and larger formats) * [http://www.trex.informatik.uni-goettingen.de/svn/trex/web/wiki/pdf/trex-poster.pdf Poster describing TRex 0.5.2] (intended to be printed on A4 and larger formats) * [http://www.trex.informatik.uni-goettingen.de/svn/trex/web/wiki/pdf/trex-flyer.pdf Flyer describing TRex 0.5.2] (intended to be printed on A4 format)