-
Notifications
You must be signed in to change notification settings - Fork 0
A Trac plugin to create test cases, organize them in catalogs, generate test plans and track their execution status and outcome
License
seccanj/testman4trac
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
Repository files navigation
Test Manager plugin for Trac Copyright (C) 2010-2022 Roberto Longobardi Guide to releases: * With Trac 1.4.x use plugins v. 2.x. * With Trac 1.2 use plugins v. 1.20.x. * With Trac 0.12.x use plugins v. 1.9.x. There is currently no version that works with Trac 1.5.x. Check the tutorial on YouTube: http://www.youtube.com/watch?v=BIi3QMT0rT4 This software is licensed as described in the file COPYING, which you should have received as part of this distribution. The terms are also available at: https://trac-hacks.org/wiki/TestManagerForTracPluginLicense Author: Roberto Longobardi <[email protected]> Project web page on TracHacks: http://trac-hacks.org/wiki/TestManagerForTracPlugin Project web page on SourceForge.net (don't use it for the git repo): http://sourceforge.net/projects/testman4trac/ Project web page on Pypi: http://pypi.python.org/pypi/TestManager Project source repository on GitHub: https://github.com/seccanj/testman4trac ======================================================================= Refer to BUILD.txt for details about how to build. Refer to INSTALL.txt or UPGRADE.txt for installation or upgrade instructions. ======================================================================= A Trac plugin to create Test Cases, organize them in catalogs, generate test plans and track their execution status and outcome. The latest release is compatible with Trac 1.4. Compatibility with Trac 1.5 and later is NOT available yet. All the code works now with Python 2.7. All database backends are supported. *********************************************************************** The Test Manager functionality is split up into three plugins: TracGenericClass: This module provides a framework to help creating classes on Trac that: * Are persisted on the DB * Support change history * Support extensibility through custom properties that the User can specify declaratively in the trac.ini file * Support custom operations to be performed before and after the standard object lifecycle events. * Listener interface for Components willing to be notified on any object lifecycle event (i.e. creation, modification, deletion). Database tables are also automatically created by the framework as declaratively stated by the client Components. Also provides an intermediate class to build objects that wrap Wiki pages and have additional properties. More details: A generic object framework supporting programmatic and declarative definition of its standard fields, declarative definition of custom fields (in trac.ini) and keeping track of change history has been created, by generalizing the base Ticket code. The specific object "type" is specified during construction as the "realm" parameter. This name must also correspond to the database table storing the corresponding objects, and is used as the base name for the custom fields table and the change tracking table (see below). Features: * Support for custom fields, specified in the trac.ini file with the same syntax as for custom Ticket fields. Custom fields are kept in a "<schema>_custom" table * Keeping track of all changes to any field, into a separate "<schema>_change" table * A set of callbacks to allow for subclasses to control and perform actions pre and post any operation pertaining the object's lifecycle * Registering listeners, via the ITestObjectChangeListener interface, for object creation, modification and deletion. * Searching objects by similarity, i.e. matching any set of valorized fields (even non-key fields), applying the "dynamic record" pattern. See the method list_matching_objects. * Integration with the Trac Search page. * Integration with the Trac Resource API. * Support for declarative specification of the database backing a particular class. The tables are created automatically. * Fine-grained security access control to any operation on any resource type or instance. TracGenericWorkflow: Provides a framework to help creating workflows around any Trac Resource. Features: * Declarative definition of the workflow, specified in trac.ini. * Same syntax as the basic Ticket workflow (I may have derived some line of code from Trac itself... ;-)) * Easy GUI integration support. You can expose the workflow operation widgets anywhere in your application pages. * Fine-grained authorization control. You can specify which role is required to perform each state transition, and to execute each corresponding action. * Custom actions. An open API allows you to program your own custom actions to be executed at any workflow state transition. * Out-of-the-box built-in actions are provided. * XML-RPC remote API. TestManager: Provides the test management-related functionality. Features: * Define test cases and organize in test catalogs (test suites). * Define a hierarchy of catalogs and sub-catalogs, whatever deep. * Test case and catalogs versioning and history of changes. * Test cases and catalogs support Wiki formatting and attachments. * Copy/move individual or a set of test cases among catalogs. * Define one or more test plans (test rounds) based on all or a portion of the test cases in a (sub-)catalog. Specify whether the test case version should be freezed in the test plan, or always link to the latest version. * One-click change status of a test case. * Ticket integration: open tickets directly from a (failed) test case, keep track of the relationship. Navigate from a test case to its related tickets and vice-versa. * Test cases, catalogs and plans can have their own custom properties, defined in trac.ini like tickets. * Definition of custom test outcomes (statuses), in addition to the built-in "Untested", "Success", "Failed". * Test execution statistical charts. Export to CSV. * Statistical charts about tickets related to test plans. Export to CSV. * Tree and tabular view of the test catalogs or test plans, and the contained test cases. * Type-ahead searching and filtering from the tree and tabular view. * Breadcrumbs to easily navigate through test catalogs and plans. * Integration with Trac search engine. * Fine-grained security with six new Trac permissions. * Create templates for test cases and test catalogs. Specify which default template should be used for test cases in any particular catalog. * Import/export test cases from/to Excel in CSV format. * National Language Support (NLS) and currently translated in Italian, French, German and Spanish. * Remote APIs: XML-RPC, RESTful. * Python API. An additional plugin is only useful for debugging and should not be installed in a production environment. SQLExecutor: Allows for running arbitrary SQL statements on the internal Trac database from a simple web page, and see the results. ======================================================================= Change History: (Refer to the tickets on trac-hacks or SourceForge for complete descriptions.) Release 2.0.0 (2022-03-19): o Fixed compatibility with Trac 1.4. This version only works with Trac 1.4.x. With Trac 0.12.x use plugins v. 1.9.x. With Trac 1.2 use plugins v. 1.20.x. There is currently no version that works with Trac 1.5.x. o With this version a big effort has been done to update and complete all the translations. Also thanks to @longradix for adding Dutch and updating German and to Google Translate for the rest :-) Release 1.10.1 (2022-03-05): o Fixed Ticket #14116 (Trac-Hacks): Wrong Status of test cases in testplan is displayed Release 1.10.0 (2022-02-07): o Removed use of deprecated APIs and replaced with updated ones. Plugin now compatible with Trac 1.4. Release 1.9.1 (2017-03-04): o Fixed Ticket #12301 (Trac-Hacks): Exception: testmanager.listRootCatalogs: object of type 'type' has no len() o Fixed Ticket #12663 (Trac-Hacks): [PATCH]: Exception during database upgrade o Fixed Ticket #12736 (Trac-Hacks): javascript error in testman4trac/testmanager/htdocs/js/testmanager.js o Fixed Ticket #12912 (Trac-Hacks): upgrade installation from Trac 0.12 to 1.0 not OK o Fixed Ticket #13094 (Trac-Hacks): can not create a test plan after clicking Generate a test plan Release 1.9.0 (2015-11-22): o Task #12395 (Trac-Hacks): BSD license possible? Changed to GPL v. 2 to BSD licensing. o Fixed Ticket #12572 (Trac-Hacks): XMLRPC listTestcases does not respect order of test cases Release 1.8.2 (2014-12-14): o Enhancement #11598 (Trac-Hacks): "Default" Test Case template to be applied to newly created Test Catalogs Now you can define a custom test case template, which will be applied to all new test cases. o Enhancement #10805 (Trac-Hacks): Remove empty sub catalogs from test plan o Enhancement #11476 (Trac-Hacks): Return custom fields in XMLRPC Calls Custom fields (http://trac-hacks.org/wiki/TestManagerForTracPlugin#Customfields) are now returned by the XML-RPC calls to retrieve test manager objects. They can also be set and changed using the "create*()" and "modifyTestObject()" methods. Refer to the XML-RPC interface documentation for further details and to the sample script "rpc_example.py" for usage examples: XML-RPC documentation: http://trac-hacks.org/wiki/TestManagerForTracPluginRPCApi o Fixed Ticket #11597 (Trac-Hacks): Cannot delete Test Case templates o Fixed Ticket #11486 (Trac-Hacks): Searching in tickets search in wiki as well even if unchecked o Fixed Ticket #11609 (Trac-Hacks): [testplan-tm_custom] custom=textarea format=wiki does not do wiki formatting Wiki formatting is now supported in custom fields, if you specify "format=wiki" for the field in trac.ini. o Fixed Ticket #11912 (Trac-Hacks): Error cloning test plan with PostgreSQL database Many thanks to "sistemas" for providing the patch!!! Release 1.8.1 (2014-01-06): o Enhancement #10805 (Trac-Hacks): Remove empty sub catalogs from test plan o Enhancement #11454 (Trac-Hacks): Test Plan hierarchy contains empty (unselected) catalogs o Enhancement #11320 (Trac-Hacks): Baseurl in stats page doesn't use trac's configuration o Enhancement #11357 (Trac-Hacks): Adding [testplan-tm_custom] custom=textarea causes exception during testplan loading Now, all custom field types are supported!!! text, textarea, select, radio, checkbox The syntax to be used in trac.ini is the same as for custom ticket fields: see http://trac.edgewall.org/wiki/TracTicketsCustomFields The only [current] limitation is the lack of support for the "wiki" format. o Enhancement #11451 (Track-Hacks): Default bug ticket name (related to test case) too long It is now possible to customize the summary for new tickets created from failing test cases. In the [testmanager] section of the trac.ini file, you can specify: ticket_summary_option: How to generate the ticket summary. Options are: full_path: the default behavior. The summary will contain a complete path in the catalogs tree, with the names of the catalogs from the root to the failing test case. last_n_catalogs: only the last specified number of catalogs in the path will be used to form the summary. The number of catalogs to use must be specified using the 'ticket_summary_num_catalogs' property. empty: the generated summary will be empty. fixed_text: the specified text will be used as the ticket summary. The text to be used must be specified using the 'ticket_summary_text' property. ticket_summary_separator: The string to be used to separate catalog names in the generated summary. Two sample configurations follow: [testmanager] ticket_summary_option = fixed_text ticket_summary_text = Failed test case: [testmanager] ticket_summary_option = last_n_catalogs ticket_summary_num_catalogs = 2 ticket_summary_separator = -> o Enhancement #11462 (Trac-Hacks): List "Root Catalogs". The XML-RPC interface has now an additional method to list the root-level catalogs. Refer to the rpc_example.py file shipped with the plugin for usage information. o Fixed Ticket #11449 (Track-Hacks): Special characters (like #) removed from the test case name o Fixed Ticket #11450 (Track-Hacks): Test case name length limit cannot be changed Release 1.7.3 (2013-12-01): A brand new Russian translation is available: thanks Valeriy Gusev! o Enhancement #11381 (Trac-Hacks): Ability to add test case in more than one test plan Release 1.7.2 (2013-11-01): A brand new Korean translation is available: thanks Mandy Cho! The French translation has also been greatly updated: thanks Laura!!! o Fixed Ticket #11358 (Track-Hacks): Adding custom [test-outcomes] breaks setting outcomes from Test Plan table view o Fixed Ticket #11347 (Track-Hacks): Show related tickets issue o Fixed Ticket #11350 (Track-Hacks): Add to Test Plan Button doesn't work Release 1.7.1 (2013-08-16): o To facilitate packaging for Debian, the test statistics were completely rewritten against the Flot library, removing the dependency on the YUI library, which was based on Flash. o Added some small usability improvements, like the folder icons for test catalogs. o Fixed Ticket #11123 (Track-Hacks): Test Stats fail to update charts o Fixed Ticket #11142 (Track-Hacks): Test Cases or Test Catalogs fails with exception "AttributeError: 'NoneType' object has no attribute 'split'" Release 1.6.2 (2013-05-23): o Enhanced the look&feel of the new "Organize Test Catalogs" dialog box. o Fixed Ticket #11055 (Track-Hacks): UnicodeEncodeError when using testcase-name with non-ascii-characters o Fixed Ticket #11113 (Track-Hacks): Links to JQuery and JQuery-UI JS not updated for new versions - Stats don't show Release 1.6.1 (2013-04-21): o Enhancement #10672 (Trac-Hacks): Status summary for the directory in the testplans. In the test plan view, now a semaphore is displayed next to each test catalog node, with the aggregated (worst) status of all the sub-tree. o Enhancement #10907 (Trac-Hacks): Custom execution order for test cases. Test cases can now be organized in catalogs with the order of your choice. You can also easily drag and drop test cases from one catalog to another. o Enhancement #10807 (Trac-Hacks): Cloning a test plan o Fixed Ticket #10568 (Track-Hacks): Can't edit test case templates o Fixed Ticket #10295 (Track-Hacks): Trac detected an internal error: UnicodeError: source returned bytes, but no encoding specified Release 1.5.2 (2012-10-14): This release makes the plugins compatible with Trac 1.0. Since the release of Trac 1.0, I had to split the plugins code into two versions: - a version that works well with Trac 0.11 - a version that works well with Trac 0.12 and Trac 1.0 All the code still works with Python 2.5, 2.6 and 2.7. All database backends are still supported. To build from the source, refer to the updated BUILD.txt file. o Fixed Ticket #10293 (Track-Hacks): New install impossible on Trac 1.0beta1 o Fixed Ticket #10295 (Track-Hacks): Trac detected an internal error: UnicodeError: source returned bytes, but no encoding specified Release 1.5.1 (2012-08-12): This is somewhat of a major release, in that it includes several new interesting features and many bug fixes. See the list below for more details. In addition to that, I realized a VIDEO TUTORIAL showing out the main features of this Test Manager, to help new and existing users take confidence with recent changes, new features and so on. Check the tutorial on YouTube: http://www.youtube.com/watch?v=BIi3QMT0rT4 Also the trac-hacks user manual has been restructured, updated and enriched with the recent changes and features. o Enhancement #353771 (SourceForge): Time tracking capability. This is now possible by means of the enhancements to the tabular views of both test catalogs and test plans and the addition of a custom field. See the comments to the feature request and the video tutorial, where this customization example is fully explored. o Enhancement #3537704 (SourceForge): Possibility to select columns for the table view. This is now possible from the administration panel. I also added an interesting feature that allows for adding a statistical row to the test catalog and test plan tabular views, with the option to have the sum, average or count of the values in any column, being it a standard or a custom property of test cases or catalogs. This feature is also used to realize the feature #353771 above. See the video tutorial for an interesting use of this one to track test execution effort estimation of an entire test plan and compare it to actual execution time. o Enhancement #3537700 (SourceForge): Option to select table view as default view. This is now possible from the administration panel. o Enhancement #3537696 (SourceForge): Possibility to change test plans. This is now possible by means of several new actions available on test cases: - On a test case definition page, you have a new action button to add the test case to a plan. A dialog box appears showing you the suitable plans (the ones not containing all test cases). - On a test case instance (a test case inside a plan) page, you have a new action button to remove the test case from the plan. - On a test case instance (a test case inside a plan) page, in case the plan is containing an old snapshot of the test case and you wish to update its text description to the latest version, you have a new action button to do that. o Fixed Ticket #8932 (Track-Hacks): The test plan tabular view has been enhanced to also show test case full text description o Fixed Ticket #10131 and #10217 (Track-Hacks): Deleting a Test Case, deleting Test Catalogs containing Test items. This only happened on PosgreSQL. o Fixed some bugs that I found ad which were not reported: - The quick search in test catalogs was not working. - Indentation of test cases in tabular views for both catalogs and plans was incorrect. - Localization (i.e. translation) did not work for some parts of the Administration panel, the Statistical charts page and several dialog boxes. - Some more I can't recall :D Release 1.4.11 (2012-06-03): The data referential integrity in case of test catalog, test case and test plan deletion has been enhanced. Deleting a test catalog now also deletes all of the contained sub-catalogs, test cases and test plans, as well as the corresponding status change history. o Fixed Ticket #9857 (Track-Hacks): Deleted test plan is still shown in Test Stats o Fixed Ticket #9953 (Track-Hacks): Changing a testcase custom field value gives and error o Fixed Ticket #10043 (Track-Hacks): Deleting "zombie" TestPlans Release 1.4.10 (2012-03-03): o Enhancement #9751 (Track-Hacks): Ability to sort catalogs. Test Catalogs are now sorted by title in the tree and table views. o Fixed Ticket #9776 (Track-Hacks): Testplans not visible with latest Agilo Plugin. o Fixed Ticket #9530 (Track-Hacks): Expand all / Collapse all is not running. This only happened with the Agilo plugin installed. o Fixed Ticket #9754 (Track-Hacks): Setting test result seemingly succeeds with expired login. Now operations such as setting a test case status and updating a custom field, when failing will display a dialog box with an error message. o Fixed Ticket #9758 (Track-Hacks): Can't delete Test Case in v1.4.9. Release 1.4.9 (2012-01-04): o Enhancement #8958 (Track-Hacks): An ability to export test data to CSV format needed. You can now export to CSV a test catalog or a test plan. In the test catalog and test plan pages you will find an "Export ..." button. The export format is designed to eventually import the stuff back into another Test Manager plugin evironment, as soon as a compatible import feature will be implemented :D (the current import feature is simpler than that.) o Enhancement #9287 (Track-Hacks): New browser tab for existing testcases. Now you have an option in trac.ini to choose what to do when clicking on a test case in the catalog/plan. The default is to NOT open it in a new window, but you can change that from the admin panel, under Testmanage->Settings, or directly in the trac.ini file like this: [testmanager] testcase.open_new_window = True o Fixed Ticket #9297 (Track-Hacks): Can't print testplan table overview. There was a problem with the default print css from Trac. o Fixed Ticket #9510 (Track-Hacks): TestStats for single Testplans at 1.4.8 not working - patched. Thanks so much Andreas for finding it and for patching it!!! o Fixed Ticket #9654 (Track-Hacks): Error when creating test plans Release 1.4.8 (2011-10-23): o Strongly enhanced the upgrade mechanism. Now it's more robust, should work with all the databases and between arbitrary Test Manager versions. The only drawback is that upgrade is only supported from 1.4.7, not from previous versions. o Enhancement #9077 (Track-Hacks): Ability to separate and report on test plans by product o Enhancement #9208 (Track-Hacks): Test plan with only selected test cases from the catalog, take snapshot version of test cases. This is an important one. Many users were asking for a way of including only selected test cases into a Test Plan, for different reasons. Now you have it :D o Added French language catalog! Thanks to someone who doesn't want to be cited :D o Fixed Ticket #9141 (Track-Hacks): Update installation 1.4.6 -> 1.4.7 not possible o Fixed Ticket #9167 (Track-Hacks): installation of 1.4.7 with postgres database not possible o Fixed Ticket #9187 (Track-Hacks): Current test status report should consider only last result of a testcase in the plan. Thanks to Andreas for his contribution to fixing this one! Release 1.4.7 (2011-08-28): o Enhancement #8907 (Track-Hacks): Add template for "New TestCase" - Thanks a lot to Christian for the hard work on this enhancement!!! Now you can define templates for your new test catalogs and new test cases, and assign default templates based on each test catalog! o Enhancement #8908 (Track-Hacks): Possiblity to change test case status from the tree view. No more need to open each test case in a plan to set its result, you can now do this directly from the tree view! o Fixed Ticket #8869 (Track-Hacks): Loading of Test Manager takes too long and sometimes time out o Added Spanish and German catalogs! Thanks a lot to Christopher and Andreas for the translations!!! Italian was already part of the plugin. Release 1.4.6 (2011-06-19): o Fixed Ticket #8871 (Track-Hacks): No # allowed at custom fields o Fixed Ticket #8873 (Track-Hacks): css styles ar not compatible with the agilo plugin o Fixed Ticket #8876 (Track-Hacks): Can't create Catalogs/Test cases when trac runs from site root o Fixed Ticket #8878 (Track-Hacks): TestManagerForTracPlugin does not play well with MenusPlugin o Fixed Ticket #8898 (Track-Hacks): yui_base_url not honored in templates ? o Enhancement #8875 (Track-Hacks): More visibility for Tickets related to test suites Added more statistical charts, including Current test status pie chart and Tickets related to test cases trend chart Simplified setting the outcome of a test case Release 1.4.5 (2011-05-21): o Enhancement #8825 (Track-Hacks): Ability to import test cases from Excel (CSV) file Release 1.4.4 (2011-03-11): o Fixed Ticket #8567 (Track-Hacks): Javascript error when deleting test plans o Enhancement #8596 (Track-Hacks): Remove hard dependency on XML RPC plugin for Trac 0.11 o Enhancement #8761 (Track-Hacks): Copy multiple test cases into another catalog Added wiki documentation for copying multiple test cases into another catalog. Release 1.4.3 (2011-01-20): o Enhancement #8427 (Track-Hacks): Add XML-RPC complete interface for remote management of test objects Release 1.4.2 (2011-01-09): o Fixed Ticket #8378 (Track-Hacks): Set date and time format correctly in Test Stats page Also added support for custom test case outcomes in the Test Stats page Release 1.4.1 (2010-12-27): o Enhancement #7846 (Track-Hacks): Customizable test case outcomes (aka verdicts) o Enhancement #7570 (Track-Hacks): Add a relationship table between tickets and test cases in plan, and corresponding API Release 1.3.12 (2010-12-19): o Enhancement #8321 (Track-Hacks): Add standard internationalization support (i18n) o Enhancement #8322 (Track-Hacks): Show timestamps according to User's locale o Fixed Ticket #8323 (Track-Hacks): Unable to expand Available plans and Test case status change history collapsable sections Release 1.3.11 (2010-12-02): o Added out of the box operation to workflow engine: set_owner and set_owner_to_self o Enhancement #8259 (Track-Hacks): Add navigation from a test case to its related tickets Release 1.3.10 (2010-11-28): o Fixed Ticket #8154 (Track-Hacks): LookupError: unknown encoding: cp0 Release 1.3.9 (2010-11-23): o Fixed Ticket #8144 (Track-Hacks): Test statistical charts don't show successful and failed figures. Release 1.3.8 (2010-11-22): o Fixed Ticket #8121 (Track-Hacks): Catalog Wiki Page not added o Fixed Ticket #8123 (Track-Hacks): Can't move testcase more than one time into different catalog o Fixed Ticket #8124 (Track-Hacks): AttributeError: 'NoneType' object has no attribute 'splitlines' o Fixed Ticket #8125 (Track-Hacks): "duplicate test case" does not work for previously moved test case Release 1.3.7 (2010-11-20): o Enhancement #7704 (Track-Hacks): Add ability to delete a Test Plan o Fixet Ticket #8084 (Track-Hacks): Ordering issue Release 1.3.6 (2010-11-09): o Fixed Ticket #8004 (Track-Hacks): Cannot search if an admin Release 1.3.5 (2010-10-17): o Restored compatibility with Trac 0.11. Now again both 0.11 and 0.12 are supported. Release 1.3.4 (2010-10-15): o Added tabular view to catalogs and plans. Search now works with custom properties in tabular views. Release 1.3.3 (2010-10-05): o Enhancement feature 3076739 (SourceForge): Full Test Plan display / print Release 1.3.2 (2010-10-03): o Added feature 3076739 (SourceForge): Full Test Plan display / print Release 1.3.1 (2010-10-02): o Fixed a base-code bug that prevented test catalog modification with a PostgreSQL binding. (Thanks Rodel for reporting it). Release 1.3.0 (2010-10-01): o The base Test Manager plugin has been separated and other plugins have been created to embed the functionalities of generic class framework and the workflow engine. Now we have four plugins: * Trac Generic Class plugin, providing the persistent class framework * Trac Generic Workflow plugin, providing the generic workflow engine applicable to any Trac Resource. This plugin requires the Trac Generic Class plugin. * SQL Executor plugin, as a debugging tool when dealing with persistent data. Not to be enabled in a production environment. Moreover, the generic class framework has been added a set of new functionalities. Refer to the README file in its package for more details. Release 1.2.0 (2010-09-20): o The data model has been completely rewritten, now using python classes for all the test objects. A generic object supporting programmatic definition of its standard fields, declarative definition of custom fields (in trac.ini) and keeping track of change history has been created, by generalizing the base Ticket code. The specific object "type" is specified during construction as the "realm" parameter. This name must also correspond to the database table storing the corresponding objects, and is used as the base name for the custom fields table and the change tracking table (see below). Features: * Support for custom fields, specified in the trac.ini file with the same syntax as for custom Ticket fields. Custom fields are kept in a "<schema>_custom" table * Keeping track of all changes to any field, into a separate "<schema>_change" table * A set of callbacks to allow for subclasses to control and perform actions pre and post any operation pertaining the object's lifecycle * Registering listeners, via the ITestObjectChangeListener interface, for object creation, modification and deletion. * Searching objects matching any set of valorized fields, (even non-key fields), applying the "dynamic record" pattern. See the method list_matching_objects. o Enhancement #7704 (Track-Hacks): Add workflow capabilities, with custom states, transitions and operations, and state transition listeners support A generic Trac Resource workflow system has been implemented, allowing to add workflow capabilities to any Trac resource. Test objects have been implemented as Trac resources as well, so they benefit of workflow capabilities. Available objects 'realms' to associate workflows to are: testcatalog, testcase, testcaseinplan, testplan. Note that the object with realm 'resourceworkflowstate', which manages the state of any resource in a workflow, also supports custom properties (see below), so plugins can augment a resource workflow state with additional context information and use it inside listener callbacks, for example. For example, add the following to your trac.ini file to associate a workflow with all Test Case objects. The sample_operation is currently provided by the Test Manager system itself, as an example. It just logs a debug message with the text input by the User in a text field. [testcase-resource_workflow] leave = * -> * leave.operations = sample_operation leave.default = 1 accept = new -> accepted accept.permissions = TEST_MODIFY accept.operations = sample_operation resolve = accepted -> closed resolve.permissions = TEST_MODIFY resolve.operations = sample_operation o Enhancement #7705 (Track-Hacks): Add support for custom properties and change history to all of the test management objects A generic object supporting programmatic definition of its standard fields, declarative definition of custom fields (in trac.ini) and keeping track of change history has been created, by generalizing the base Ticket code. Only text type of properties are currently supported. For example, add the following to your trac.ini file to add custom properties to all of the four test objects. Note that the available realms to augment are, as above, testcatalog, testcase, testcaseinplan and testplan, with the addition of resourceworkflowstate. [testcatalog-tm_custom] prop1 = text prop1.value = Default value [testcaseinplan-tm_custom] prop_strange = text prop_strange.value = windows [testcase-tm_custom] nice_prop = text nice_prop.value = My friend [testplan-tm_custom] good_prop = text good_prop.value = linux o Enhancement #7569 (Track-Hacks): Add listener interface to let other components react to test case status change Added listener interface for all of the test objects lifecycle: * Object created * Object modified (including custom properties) * Object deleted This applies to test catalogs, test cases, test plans and test cases in a plan (i.e. with a status). Release 1.1.2 (2010-08-25): o Enhancement #7552 (Track-Hacks): Export test statistics in CSV and bookmark this chart features in the test stats chart o Fixed Ticket #7551 (Track-Hacks): Test statistics don't work on Trac 0.11 Release 1.1.1 (2010-08-20): o Enhancement #7526 (Track-Hacks): Add ability to duplicate a test case o Enhancement #7536 (Track-Hacks): Add test management statistics o Added "autosave=true" parameter to the RESTful API to create test catalogs and test cases programmatically without need to later submit the wiki editing form. Release 1.1.0 (2010-08-18): o Enhancement #7487 (Track-Hacks): Add multiple test plans capability o Enhancement #7507 (Track-Hacks): Implement security permissions o Enhancement #7484 (Track-Hacks): Reverse the order of changes in the test case status change history Release 1.0.2 (2010-08-17): o Fixed Ticket #7485 (Track-Hacks): "Open ticket on this test case" should work without a patched TracTicketTemplatePlugin Release 1.0.1 (2010-08-12): o First attempt at externalizing strings Release 1.0 (2010-08-10): o First release publicly available
About
A Trac plugin to create test cases, organize them in catalogs, generate test plans and track their execution status and outcome
Topics
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published