What is software testing?

This is my answer when the person asking comes in from the cold.

Take a look at Giridhar Vijayaraghavan’s thesis ‘A taxonomy of E-commerce risks and failures’.  Here is a mind map which shows the component failures and another which shows the qualitative risks (Both mind maps can be downloaded and viewed using Xmind).  This is the original thesis.  Vijayaraghavan analyzes the different ways in which an e-commerce shopping cart can fail.  The mind maps can give you a quick overview of the various failures.  Note that the original thesis contains specific examples of the failures as well as examples of failures which have been published.

When you look at the many ways in which a shopping cart can fail, you realize the impotence of concepts such as “test cases” and automation.  If nothing, stare at the two mindmaps for the shopping cart and read the many different failures to understand what testers need to do.

For similar ideas on failure take a look at Cem Kaner’s defect catalog (Appendix A from Testing Computer Software, Cem Kaner, Jack Falk, Hung Quoc Nguyen).  Here is a mind map and the original list.  You can download the mindmap and expand the branches in Xmind.

Note that both the shopping cart taxonomy and Kaner’s defect catalog should not be used blindly (without context).  They can be used to generate ideas.  However, you need to determine the relative importance for your project.

Of course there is much more to software testing.  Read the The Little Black Book on Test Design for more.