Test management is the term used to refer to the process in which the resources, artifacts and materials associated with testing a system or product that is being developed are managed. Such testing should be consistently executed through the whole process. This enables the achievement of high quality product releases to customers and clients. There are various principles which when followed ensure that test management yields desirable results. They include:
• Tracking all the details of a system or product by recording all aspects in terms of expected requirements and components as well as all versions created. However, tracking should be done to all sub products. Results should be logged against all versions as well as sub-projects. This can be achieved by having a single version that incorporates all references to sub projects. However, this is only attained by having a well defined configuration management process. Tracking can be enhanced by building a traceability matrix where you can view requirements with failed tests before products releases. This should also be done for product components so as to ensure that all individual results are logged against their specific versions. Different versions perform differently where some may fail or pass the tests that are executed on them.
• A repository of cases should be built so as to allow the reuse of tests against multiple versions on a scheduled basis. The ability to reuse cases is an important aspect of desirable test management. Testers are then able to run effective and efficient test processes. In addition, having the identification capability of reuse cases against various system versions meets the requirement of comprehensive regression run tests which are done against all versions of a system.
• Test management should be classified logically. This implies functional or non-functional in relation to usability, load testing as well as performance. This helps in organizing the testing process as well as aiding in aspects such as allocation and reporting. For example, a category such as performance can be assignment to a team and where results are reported separately from results of other categories. This enables the overall testing process to be grouped according the status of each category. Information resources on each status can then be allocated to different teams according to which category they lead.
• Defects in a product are identified by executing a series of tests. Results should be recorded against a specified version of a product. A defect resulting from a failed test should be recorded in a defect tracking tool.
How successful a product release will be is highly dependent on a proper test management process.