Sentinel: A Hyper-Heuristic for the Generation of Mutant Reduction Strategies

被引:10
作者
Guizzo, Giovani [1 ]
Sarro, Federica [1 ]
Krinke, Jens [1 ]
Vergilio, Silvia R. [2 ]
机构
[1] UCL, Gower St, London WC1E 6EA, England
[2] Univ Fed Parana, BR-82590300 Curitiba, Parana, Brazil
关键词
Testing; Maintenance engineering; Computational efficiency; Open source software; Software engineering; Search problems; Mutation testing; mutant reduction; software testing; grammatical evolution; hyper-heuristic; search based software testing; search based software engineering;
D O I
10.1109/TSE.2020.3002496
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Mutation testing is an effective approach to evaluate and strengthen software test suites, but its adoption is currently limited by the mutants' execution computational cost. Several strategies have been proposed to reduce this cost (a.k.a. mutation cost reduction strategies), however none of them has proven to be effective for all scenarios since they often need an ad-hoc manual selection and configuration depending on the software under test (SUT). In this paper, we propose a novel multi-objective evolutionary hyper-heuristic approach, dubbed Sentinel, to automate the generation of optimal cost reduction strategies for every new SUT. We evaluate Sentinel by carrying out a thorough empirical study involving 40 releases of 10 open-source real-world software systems and both baseline and state-of-the-art strategies as a benchmark. We execute a total of 4,800 experiments, and evaluate their results with both quality indicators and statistical significance tests, following the most recent best practice in the literature. The results show that strategies generated by Sentinel outperform the baseline strategies in 95 percent of the cases always with large effect sizes. They also obtain statistically significantly better results than state-of-the-art strategies in 88 percent of the cases, with large effect sizes for 95 percent of them. Also, our study reveals that the mutation strategies generated by Sentinel for a given software version can be used without any loss in quality for subsequently developed versions in 95 percent of the cases. These results show that Sentinel is able to automatically generate mutation strategies that reduce mutation testing cost without affecting its testing effectiveness (i.e., mutation score), thus taking off from the tester's shoulders the burden of manually selecting and configuring strategies for each SUT.
引用
收藏
页码:803 / 818
页数:16
相关论文
共 80 条
[1]   Some Challenges for Software Testing Research (Invited Talk Paper) [J].
Alshahwan, Nadia ;
Ciancone, Andrea ;
Harman, Mark ;
Jia, Yue ;
Mao, Ke ;
Marginean, Alexandru ;
Mols, Alexander ;
Peleg, Hila ;
Sarro, Federica ;
Zorin, Ilya .
PROCEEDINGS OF THE 28TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS (ISSTA '19), 2019, :1-3
[2]   Establishing Theoretical Minimal Sets of Mutants [J].
Ammann, Paul ;
Delamaro, Marcio E. ;
Offutt, Jeff .
2014 IEEE SEVENTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2014, :21-30
[3]  
[Anonymous], 2016, P 25 INT S SOFTW TES
[4]  
[Anonymous], 1995, SOFTWARE QUALITY PRO
[5]  
[Anonymous], 2013, SOFTWARE TESTING CLO
[6]   Toward the determination of sufficient mutant operators for C [J].
Barbosa, EF ;
Maldonado, JC ;
Vincenzi, AMR .
SOFTWARE TESTING VERIFICATION & RELIABILITY, 2001, 11 (02) :113-136
[7]  
Bashir M., 2012, 2012 11th International Conference on Environment and Electrical Engineering, P989, DOI 10.1109/EEEIC.2012.6221521
[8]  
Bowes David., 2016, Proceedings of the 25th International Symposium on Software Testing and Analysis, P330, DOI DOI 10.1145/2931037.2931039
[9]  
Burke EK, 2010, INT SER OPER RES MAN, V146, P449, DOI 10.1007/978-1-4419-1665-5_15
[10]  
Calero C., 2015, Green in Software Engineering