Title :
Dynamic Inference of Likely Metamorphic Properties to Support Differential Testing
Author :
Fang-Hsiang Su ; Bell, Jonathan ; Murphy, Christian ; Kaiser, Gail
Author_Institution :
Dept. of Comput. Sci., Columbia Univ., New York, NY, USA
Abstract :
Metamorphic testing is an advanced technique to test programs without a true test oracle such as machine learning applications. Because these programs have no general oracle to identify their correctness, traditional testing techniques such as unit testing may not be helpful for developers to detect potential bugs. This paper presents a novel system, KABU, which can dynamically infer properties of methods´ states in programs that describe the characteristics of a method before and after transforming its input. These Metamorphic Properties (MPs) are pivotal to detecting potential bugs in programs without test oracles, but most previous work relies solely on human effort to identify them and only considers MPs between input parameters and output result (return value) of a program or method. This paper also proposes a testing concept, Metamorphic Differential Testing (MDT). By detecting different sets of MPs between different versions for the same method, KABU reports potential bugs for human review. We have performed a preliminary evaluation of KABU by comparing the MPs detected by humans with the MPs detected by KABU. Our preliminary results are promising: KABU can find more MPs than human developers, and MDT is effective at detecting function changes in methods.
Keywords :
learning (artificial intelligence); program debugging; program testing; KABU; MDT; machine learning; metamorphic differential testing; metamorphic property; potential bug; program testing; unit testing; Arrays; Computer bugs; Instruments; Libraries; Software; Testing; Writing;
Conference_Titel :
Automation of Software Test (AST), 2015 IEEE/ACM 10th International Workshop on
Conference_Location :
Florence
DOI :
10.1109/AST.2015.19