Knowledge Center

Error Guessing in Software Testing

Error-guessing in software testing can find number of faults that systematic techniques may be fail to attend. Test cases are derived from experience of where defects have taken place in the past or software tester has acumen as to where defects can take place in the future.

Error-guessing should be used as a 'mopping-up’ technique or as a supplement to systematic techniques, but not as the first choice approach.

Some persons are genius in detecting defects thanks to intuition and experience. There is no procedure for a greatly intuitive and ad hoc process.

Main ideas:

  • make a list of likely defects or error-prone situations -> test cases
  • identify test cases associated with assumptions that may have been made when writing the specifications

See an example: "Binary Sort"

  • only one entry is in table
  • table size is power of 2
  • table size is (power of 2) +/- 1

See another example: "Sorting subroutine"

  • input list is empty
  • single entry in input list
  • all entries are of the equal value
  • entries have already been sorted

A special form:

Data-structure based testing Look at data structures used and consider cases related to the structures being used.

See an example: "Linked list"

  • zero components
  • only one component
  • one less than max quantity of components
  • max quantity of components