Skip to content
UoL CS Notes

Testing Principles

COMP285 Lectures

  • Testing shows the presence of errors; not their absence.
  • Exhaustive testing is not practical in most cases.
  • Test early and regularly to avoid bug masking and multiple defect relations.
  • Errors are not evenly distributed:
    • 20% of modules generally contain 80% of errors.

Pesticide Paradox

Unless tests change they often become invalid - as the functionality changes so should the tests:

  • If we continue to use old tests, only buts associated with the old specification are removed.

Context Dependency

We should focus our testing on the most critical type of test, for example:

  • Medical System - Safety Testing
  • Website - Performance and Load Testing

Types of Testing

We can include the following types of tests:

  • Verification (Against the Specification)
  • Validation (Right for the Customer)
  • Performance
  • Security
  • Usability
  • Regulatory Testing
  • Statistical Testing