BookReview: Testing Computer Software, 2nd Ed.
by Cem Kaner et al, Wiley, 1999, 0-471-35846-0

This is an up to date version of the Art of Software Testing. It is oriented towards waterfall development, but the technical discussion of testing are very good.

[p124] An excellent test case satisfies the following criteria:

  • It has a reasonable probability of catching an error.

  • It is not redundant.

  • It's the best of its breed.

  • It is neither too simple nor too complex.

[p126] Here are a few recommendations for looking for equivalence classes:

  • Don't forget equivalence classes for invalid inputs.

  • Organize your classifications into a table or an outline.

  • Look for ranges of numbers.

  • Look for membership in a group.

  • Analyze responses to lists and menus.

  • Look for variables that must be equal.

  • Create time-determined equivalence classes.

  • Look for variable groups that must calculate to a certain value or a range.

  • Look for equivalent output events.

  • Look for equivalent operating environments.

Via Rob 2004