Efficient multi-objective higher order mutation testing with genetic programming |
| |
Authors: | William B Langdon [Author Vitae] Mark Harman Author Vitae] Yue Jia Author Vitae] |
| |
Affiliation: | Department of Computer Science, CREST Centre, King’s College London, Strand, London WC2R 2LS, UK |
| |
Abstract: | It is said 90% of faults that survive manufacturer’s testing procedures are complex. That is, the corresponding bug fix contains multiple changes. Higher order mutation testing is used to study defect interactions and their impact on software testing for fault finding. We adopt a multi-objective Pareto optimal approach using Monte Carlo sampling, genetic algorithms and genetic programming to search for higher order mutants which are both hard-to-kill and realistic. The space of complex faults (higher order mutants) is much larger than that of traditional first order mutations which correspond to simple faults, nevertheless search based approaches make this scalable. The problems of non-determinism and efficiency are overcome. Easy to detect faults may become harder to detect when they interact and impossible to detect single faults may be brought to light when code contains two such faults. We use strong typing and BNF grammars in search based mutation testing to find examples of both in ancient heavily optimised every day C code. |
| |
Keywords: | Pareto optimality Mutation testing Higher order mutation SBSE Monte Carlo Genetic algorithm Genetic programming NSGA-II Strongly typed GP Grammar based GP Non-determinism Triangle Schedule tcas Gzip |
本文献已被 ScienceDirect 等数据库收录! |