TY - GEN
T1 - Programs, tests, and oracles
T2 - 33rd International Conference on Software Engineering, ICSE 2011
AU - Staats, Matt
AU - Whalen, Michael W.
AU - Heimdahl, Mats P.E.
PY - 2011
Y1 - 2011
N2 - In previous decades, researchers have explored the formal foundations of program testing. By exploring the foundations of testing largely separate from any specific method of testing, these researchers provided a general discussion of the testing process, including the goals, the underlying problems, and the limitations of testing. Unfortunately, a common, rigorous foundation has not been widely adopted in empirical software testing research, making it difficult to generalize and compare empirical research. We continue this foundational work, providing a framework intended to serve as a guide for future discussions and empirical studies concerning software testing. Specifically, we extend Gourlay's functional description of testing with the notion of a test oracle, an aspect of testing largely overlooked in previous foundational work and only lightly explored in general. We argue additional work exploring the interrelationship between programs, tests, and oracles should be performed, and use our extension to clarify concepts presented in previous work, present new concepts related to test oracles, and demonstrate that oracle selection must be considered when discussing the efficacy of a testing process.
AB - In previous decades, researchers have explored the formal foundations of program testing. By exploring the foundations of testing largely separate from any specific method of testing, these researchers provided a general discussion of the testing process, including the goals, the underlying problems, and the limitations of testing. Unfortunately, a common, rigorous foundation has not been widely adopted in empirical software testing research, making it difficult to generalize and compare empirical research. We continue this foundational work, providing a framework intended to serve as a guide for future discussions and empirical studies concerning software testing. Specifically, we extend Gourlay's functional description of testing with the notion of a test oracle, an aspect of testing largely overlooked in previous foundational work and only lightly explored in general. We argue additional work exploring the interrelationship between programs, tests, and oracles should be performed, and use our extension to clarify concepts presented in previous work, present new concepts related to test oracles, and demonstrate that oracle selection must be considered when discussing the efficacy of a testing process.
KW - testing formalism
KW - theory of testing
UR - http://www.scopus.com/inward/record.url?scp=79959901246&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=79959901246&partnerID=8YFLogxK
U2 - 10.1145/1985793.1985847
DO - 10.1145/1985793.1985847
M3 - Conference contribution
AN - SCOPUS:79959901246
SN - 9781450304450
T3 - Proceedings - International Conference on Software Engineering
SP - 391
EP - 400
BT - ICSE 2011 - 33rd International Conference on Software Engineering, Proceedings of the Conference
Y2 - 21 May 2011 through 28 May 2011
ER -