Finding failures from passed test cases: improving the pattern classification approach to the testing of mesh simplification programs

被引:18
作者
Chan, W. K. [1 ]
Ho, Jeffrey C. F. [2 ]
Tse, T. H. [3 ]
机构
[1] City Univ Hong Kong, Dept Comp Sci, Hong Kong, Hong Kong, Peoples R China
[2] Wwwins Consulting Hong Kong Ltd, Hong Kong, Hong Kong, Peoples R China
[3] Univ Hong Kong, Hong Kong, Hong Kong, Peoples R China
基金
澳大利亚研究理事会;
关键词
test oracle problem; mesh simplification; non-testable software; metamorphic testing; classification; testing methodology; SOFTWARE; ALGORITHM; MUTATION; ORACLES; TOOL;
D O I
10.1002/stvr.408
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Mesh simplification programs create three-dimensional polygonal models similar to an original polygonal model, and yet use fewer polygons. They produce different graphics even though they are based on the same original polygonal model. This results in a test oracle problem. To address the problem, our previous work has developed a technique that uses a reference model of the program under test to train a classifier. Using such an approach may mistakenly mark a failure-causing test case as passed. It lowers the testing effectiveness of revealing failures. This paper suggests piping the test cases marked as passed by a statistical pattern classification module to an analytical metamorphic testing (MT) module. We evaluate our approach empirically using three subject programs with over 2700 program mutants. The result shows that, using a resembling reference model to train a classifier, the integrated approach can significantly improve the failure detection effectiveness of the pattern classification approach. We also explain how MT in our design trades specificity for sensitivity. Copyright (C) 2009 John Wiley & Sons, Ltd.
引用
收藏
页码:89 / 120
页数:32
相关论文
共 62 条
[41]  
Mayer J, 2006, P INT COMP SOFTW APP, P475
[42]  
Melax S., 1998, GAME DEV, P44
[43]   What test oracle should I use for effective GUI testing? [J].
Memon, A ;
Banerjee, I ;
Nagarajan, A .
18TH IEEE INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2003, :164-173
[44]  
MEMON AM, 2000, P ACM SIGSOFT 8 INT, P30
[45]  
Meyer Bertrand, 1992, Eiffel: The Language
[46]   MindSeer: a portable and extensible tool for visualization of structural and functional neuroimaging data [J].
Moore, Eider B. ;
Poliakov, Andrew V. ;
Lincoln, Peter ;
Brinkley, James F. .
BMC BIOINFORMATICS, 2007, 8 (1)
[47]  
Offutt A. J., 1996, ACM Transactions on Software Engineering and Methodology, V5, P99, DOI 10.1145/227607.227610
[48]  
OSTRAND T, 1998, ACM SIGSOFT SOFTWARE, V23, P82
[49]   Using test oracles generated from program documentation [J].
Peters, DK ;
Parnas, DL .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1998, 24 (03) :161-173
[50]   Automated support for classifying software failure reports [J].
Podgurski, A ;
Leon, D ;
Francis, P ;
Masri, W ;
Minch, M ;
Sun, JY ;
Wang, B .
25TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, PROCEEDINGS, 2003, :465-475