What do you think are the most important features of ALM tools that manage testing processes?
Testing is part of the Software Development Lifecycle (SDLC). Any tools that support any part of the SDLC must be able to collaborate with other tools supporting other parts of the SDLC.
In an ideal world, when a piece of code is checked-in, the automated test suite should run automatically for those test scripts impacted by the code changes made; any test failures should automatically open tickets in the developer’s inbox describing the failure and the corresponding code un-checked out, as well as updating the code coverage statistics against corresponding requirements. This vision is fast becoming a reality for many development teams.
For this level of automation to happen, it would mean the integration of the developers integrated development environment (IDE) with the source-code management system, with the code coverage tool, with the impact analysis tool, with the testing tool and with the defect-tracking tool.
So when selecting a test management tool, indeed any tool in support of the SLDC, it is critical that it have an open API, Web-services based, so it can be easily integrated with other tools.
However, collaboration goes beyond the mere integration of tools at some functional level. It is vital to remember that the SDLC is more about the process of developing software than it is about the tools. Your SDLC has evolved over five decades (or more) and is designed to meet your business needs in terms of risk, quality, time-to-market, content completeness, cost etc. Any testing tool added to your SDLC must support your process. It cannot force you to change how you run your business. Always select a tool that is process-centric and allows your processes including all your special cases to be implemented.
As with any tool designed to manage part of the SDLC, what it tells you about what is going on is often more useful than the actual managing of the task. Therefore, it is critical that test management tools provide the ability to report on the state of the testing process. Charting, trending and historical analysis needs to be built-in. Common industry key performance indicators (KPI’s) should come out of the box as well as the ability to add more and manage your service level agreements (SLA’s). Being able to slice and dice the data is critical too; being able to report by team, by project, by developer, by test, against requirements, code coverage are all data points demanded by project managers these days. The tool needs to be the quality dashboard for the business.
So when selecting a test management tool look for process-centricity, the ability to integrate into all parts of the SDLC and powerful reporting are key features to look for.
This was first published in March 2012