DocumentCode
2145892
Title
Abstraction in Assertion-Based Test Oracles
Author
Cheon, Yoonsik
Author_Institution
Univ. of Texas at El Paso, El Paso
fYear
2007
fDate
11-12 Oct. 2007
Firstpage
410
Lastpage
414
Abstract
Assertions can be used as test oracles. However, writing effective assertions of right abstraction levels is difficult because on the one hand, detailed assertions are preferred for thorough testing (i.e., to detect as many errors as possible), but on the other hand abstract assertions are preferred for readability, maintainability, and reusability. As assertions become a practical tool for testing and debugging programs, this is an important and practical problem to solve for the effective use of assertions. We advocate the use of model variables - specification-only variables of which abstract values are given as mappings from concrete program states - to write abstract assertions for test oracles. We performed a mutation testing experiment to evaluate the effectiveness of the use of model variables in assertion-based test oracles. According to our experiment, assertions written in terms of model variables are as effective as assertions written without using model variables in detecting (injected) faults, and the execution time overhead of model variables are negligible. Our findings are applicable to other use of runtime checkable assertions.
Keywords
formal specification; program diagnostics; program testing; abstract assertions; assertion-based test oracles; mutation testing; program debugging; program testing; runtime checkable assertions; specification-only variables; Computer science; Concrete; Debugging; Genetic mutations; Java; Performance evaluation; Programming profession; Runtime; Testing; Writing;
fLanguage
English
Publisher
ieee
Conference_Titel
Quality Software, 2007. QSIC '07. Seventh International Conference on
Conference_Location
Portland, OR
ISSN
1550-6002
Print_ISBN
978-0-7695-3035-2
Type
conf
DOI
10.1109/QSIC.2007.4385528
Filename
4385528
Link To Document