Software fault interactions and implications for software testing

D.R. Kuhn, D.R. Wallace, A.M. Gallo
2004 IEEE Transactions on Software Engineering  
Exhaustive testing of computer software is intractable, but empirical studies of software failures suggest that testing can in some cases be effectively exhaustive. Data reported in this study and others show that software failures in a variety of domains were caused by combinations of relatively few conditions. These results have important implications for testing. If all faults in a system can be triggered by a combination of n or fewer parameters, then testing all n-tuples of parameters is
more » ... fectively equivalent to exhaustive testing, if software behavior is not dependent on complex event sequences and variables have a small set of discrete values.
doi:10.1109/tse.2004.24 fatcat:ptbmqj7ttvfcxfy4hgei6lv4fq