Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Techniques for testing scientific programs without an oracle
Kanewala U., Bieman J.  SE-CSE 2013 (Proceedings of the 5th International Workshop on Software Engineering for Computational Science and Engineering, San Francisco, CA, May 18, 2013)48-57.2013.Type:Proceedings
Date Reviewed: Oct 16 2014

Scientists often write programs for which no traditional oracle exists. Over the years, techniques have emerged that can be used to test such programs. This paper provides detailed explanations of three of these techniques: metamorphic testing exploits knowledge of how changes to inputs affect outputs; assertion checking involves embedding constraints into source code; and machine learning involves building classifiers using black-box features to predict whether an output is correct or not. A critical review is also presented of empirical studies that have applied these three techniques.

Several suggestions for future work are made. For example, metamorphic testing was found incapable of killing several mutants in the empirical studies reviewed, and research is needed to determine if it is possible to kill these mutants using stronger metamorphic relations (MRs). While assertion checking was found to be more effective than the null oracle in the empirical study reviewed, it was found to be either very effective or very ineffective depending on the method. Additional empirical studies are needed of the assertion checking technique. The authors conclude that automated support is needed to detect MRs and assertions. Such automated support could significantly reduce the need for domain knowledge required by the test engineer. Addressing falsely signaled faults is wasteful, so any such automated support must also minimize the generation of spurious MRs/assertions.

This paper is a thorough exposition on three techniques that can be used to test the so-called non-testable programs. As such, it is strongly recommended to the software testing community.

Reviewer:  Andy Brooks Review #: CR142836 (1501-0065)
Bookmark and Share
  Featured Reviewer  
 
Software/ Program Verification (D.2.4 )
 
 
Testing And Debugging (D.2.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Software/Program Verification": Date
Verification of sequential and concurrent programs
Krzysztof R., Olderog E., Springer-Verlag New York, Inc., New York, NY, 1991. Type: Book (9780387975320)
Jul 1 1992
On verification of programs with goto statements
Lifschitz V. (ed) Information Processing Letters 18(4): 221-225, 1984. Type: Article
Mar 1 1985
The validation, verification and testing of software
Ince D. (ed), Oxford University Press, Inc., New York, NY, 1985. Type: Book (9789780198590040)
Sep 1 1987
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy