Here’s the testing strategy given by G.J. Myers in “The Art of Software Testing – 2nd Edition”.
This is a very good strategy and worth following at all times.
1. If the specification contains combinations of input conditions, start with cause-effect graphing.
2. In any event, use boundary-value analysis.
The boundary-value analysis yields a set of supplemental test conditions, but, many or all of these can be incorporated into the cause-effect tests.
3. Identify the valid and invalid equivalence classes for the input and output, and supplement the test cases identified above if necessary.
4. Use the error-guessing technique to add additional test cases.
5. Examine the program’s logic with regard to the set of test cases.
Use the decision-coverage, condition-coverage, decision/condition-coverage, or multiple-condition-coverage criterion (the last being the most complete).
If the coverage criterion has not been met by the test cases identified in the prior four steps, and if meeting the criterion is not impossible (i.e., certain combinations of conditions may be impossible to create because of the nature of the program), add sufficient test cases to cause the criterion to be satisfied.