Here is a summary of all the key points that i picked out after listening to the CIO magazine podcast by Meredith Levison, discussing her top 10 tips for software testing.
Top 10 tips for testing:
1) Respect testers: recruit good testers; detail oriented, methodical and patient; people who know how to code (gains respect from the developers as well as enables testers to code their own tools)
2) Raise testers awareness of their value: highlight importance of testers work, amount that is saved cos of their work; improves morale
3) Co-locate testers and developers: often at odds with each other, so physical proximity is imp
4) Cross train developers and testers: fosters understanding, improves relations between both groups, and quality of apps since each group approaches their tasks with a broader understanding of the software development life cycle.
5) Tell programmers to chill out: programmers shouldnt get annoyed when faults are discovered; testers are just doing their job. Also assure developers that mistakes do not necessarily reflect on their job security.
6) Set up and independent reporting structure: don’t have testers report to the development group
7) Centralize test groups: ensures testers share best practices of testing, easy communication between testers.
8) Dedicate testers to specific systems: deepens understanding of how their systems work; also gives testers the expertise to identify problems that might not show up in a formal test document.
9) Give testers business training: allows testers to learn the business lingo, and better understand the systems they test
10) Involve business users in testing: ensure that the systems IT is developing meets their specs. Allows bugs and missing requirements to be detected that QualityAssurance have not identified
Consequences of inadequate testing:
Businesses and in some cases, lives, are at risk when organizations fail to adequately and effectively test sofware for bugs and performance issues, or to determine whether the software meets business requirements, or end users needs
There are a variety of best practices for testing software. These practices were learned from companies that have rigorous testing needs and standards.
These tips build beyond the “test early and often” mantra, and will improve IT organizations testing capabilities, not to mention the quality of the softwares that are released.