[[PageOutline(2-5,Contents,pullout)]] = Test Manager plugin for Trac = == Description == A Trac plugin to create Test Cases, organize them in catalogs and track their execution status and outcome. Differently from other test management plugins for Trac that use Tickets as test case holders, this one uses Wiki pages and an additional proprietary data model to store Test Cases. This allows you to not pollute your ticket lists with something that is not a ticket, and at the same time is powered by the Trac search engine and formatting syntax for Wiki pages. A set of plugins intercept requests for Wiki pages that are test cases and decorate the page with title, breadcrumbs, tree view, type-ahead search inside the catalogs, test case status semaphore and icons and buttons that allow you to create new test cases, sub-catalogs, copy and paste test cases around different catalogs and change a test case status. Here follows an overview of the plugin functionalities. For a full tutorial, refer to the powerpoint presentations attached below (the ones with shorter names work). [[BR]] [[BR]] == Test Catalogs == Test catalogs contain sub-catalogs or Test Cases. A Javascript tree view displays a catalog node and its sub-tree, including the test cases and their status. Notice at the top of the page breadcrumbs to easily navigate up in the catalogs tree. You can add sub-catalogs or Test Cases simply by entering a name (blanks and case is supported) and click the appropriate button. A new wiki page is generated, with a naming convention allowing the plugin code to position it correctly in the catalogs tree, and opened for editing. Be careful that the first line will always be taken as the title of the catalog (the same stands for test cases, read below). Just save the new page ("Submit Changes") and you'll have your new catalog in place. [[BR]] [[BR]] [[Image(screen2.JPG)]] [[BR]] [[BR]] == Test Cases == Test Cases are the smallest units of test execution. They are implemented again as wiki pages, with a naming convention that allows the plugin code to recognize them and treat them appropriately. You can track the execution status a Test Case by simply clicking on the corresponding light in the semaphore at the bottom of the page. You don't need to save anything, the change is immediately recorded in the database by means of an Ajax call (you may even envision calling this RESTful API from external applications). Again, notice the breadcrumbs at the top, useful to go back to the enclosing catalog or any catalog up the hierarchy. [[BR]] [[BR]] [[Image(screen3.JPG)]] [[BR]] [[BR]] == Searching anf filtering Test Cases in the tree view == A type-ahead, browser-side filtering feature allows for easily locating Test Cases matching a particular naming convention in the title, and/or a particular execution status. Multiple words (or parts of) separated by blanks are supported, in AND condition. You can also add a test case status to filter by this criterion. The supported statuses are (even substrings of): * untested * successful * failed [[BR]] [[BR]] [[Image(screen4.JPG)]] [[BR]] [[BR]] [[BR]] Tutorial (as powerpoint presentation): * attachment:"UserGuide_part_1.ppt" * attachment:"UserGuide_part_2.ppt" * attachment:"UserGuide_part_3.ppt" Project site: http://sourceforge.net/projects/testman4trac/ == Bugs/Feature Requests == Existing bugs and feature requests for TestManagerForTracPlugin are [report:9?COMPONENT=TestManagerForTracPlugin here]. If you have any issues, create a [http://trac-hacks.org/newticket?component=TestManagerForTracPlugin&owner=seccanj new ticket]. == Download == Download the egg files, ready to be installed, from the project site [http://sourceforge.net/projects/testman4trac/files here]. == Source == You can download the source code from [https://sourceforge.net/projects/testman4trac/files here]. == Example == The plugin can be installed as usual, from the Trac administration panel, and requires a database upgrade. At the moment it has been tested only on Trac 0.11 with Python 2.5. Follow the tutorial presentation that you can download from the project site to start. == Recent Changes == [[ChangeLog(testmanagerfortracplugin, 3)]] == Author/Contributors == '''Author:''' [wiki:seccanj] [[BR]] '''Maintainer:''' [wiki:seccanj] [[BR]] '''Contributors:'''