In the Test Manager’s perfect world, her team would be staffed entirely by expert software engineering professionals. These test engineers could converse intelligently one minute with development engineers about code coverage and memory leaks; the next minute talk with technical support agents about the customer’s experience of quality; and one minute later speak to marketeers about trade-offs between features, schedule, budget, and quality in the upcoming release. Such engineers would spend their time programming unit and integration test stubs and scaffolds for structural testing, scripting automated behavioral tests at the GUI level, and creating load generators and performance probes. Manual testing would be used sparingly to fill the gaps in such tests, for example by producing interesting error conditions and checking the system’s response. The Test Manager would have ample staffing budget to hire such peer-level test engineers, and would have early involvement in the development effort. He could focus on verifying quality risk coverage using techniques like failure mode and effect analysis, analyzing and reporting defect management metrics, and setting up career development plans for his engineers.
Read this article → (PDF 172 kB)