Efficient Software Verification: Statistical Testing Using Automated Search

Research output: Contribution to journalArticlepeer-review

Abstract

Statistical testing has been shown to be more efficient at detecting faults in software than other methods of dynamic testing such as random and structural testing. Test data are generated by sampling from a probability distribution chosen so that each element of the software's structure is exercised with a high probability. However, deriving a suitable distribution is difficult for all but the simplest of programs. This paper demonstrates that automated search is a practical method of finding near-optimal probability distributions for real-world programs, and that test sets generated from these distributions continue to show superior efficiency in detecting faults in the software.

Original languageEnglish
Article number5406530
Pages (from-to)763-777
Number of pages15
JournalIEEE Transactions on Software Engineering
Volume36
Issue number6
DOIs
Publication statusPublished - 1 Nov 2010

Bibliographical note

Query date: 14/01/2011

Keywords

  • automated search
  • dynamic testing
  • near-optimal probability distribution
  • random testing
  • software fault detection
  • software verification
  • statistical testing
  • structural testing
  • test data
  • program testing
  • program verification
  • statistical distributions

Cite this