4 files

Efficiently Finding Higher-Order Mutants

online resource
posted on 31.03.2021, 19:25 by Chu Pan Wong, Jens Meinicke, Christian Kastner, Leo Chen
Higher-order mutation has the potential for improving major drawbacks of traditional first-order mutation, such as by simulating more realistic faults or improving test optimization techniques. Despite interest in studying promising higher-order mutants, such mutants are difficult to find due to the exponential search space of mutation combinations. State-of-the-art approaches rely on genetic search, which is often incomplete and expensive due to its stochastic nature. First, we propose a novel way of finding a complete set of higher-order mutants by using variational execution, a technique that can, in many cases, explore large search spaces completely and often efficiently. Second, we use the identified complete set of higher-order mutants to study their characteristics. Finally, we use the identified characteristics to design and evaluate a new search strategy, independent of variational execution, that is highly effective at finding higher-order mutants even in large codebases.

In this repository, we share our implementation and experiment setup as executable jars for reproducing the reported data in our paper:

* SSHOM-Finder.zip is the main artifact for reproducing our results. It contains two jars and a README that documents how to use the jars.
* Results.zip contains the raw data we used at the time of writing our paper. These results were obtained by running SSHOM-Finder.zip. We share them here for easy reference.
* VariationalExecution.zip contains jars for running variational execution to generate BDDs. The jars in SSHOM-Finder.zip already contain and use pre-computed BDDs, so this step is optional.

Source code is available on Github: https://github.com/poosomooso/SSHOM-Search


NSF (awards 1318808, 1552944, and 1717022)


Publisher Statement

This repository contains auxiliary material for the following article: Chu-Pan Wong, Jens Meinicke, Leo Chen, João P. Diniz, Christian Kästner, and Eduardo Figueiredo. 2020. Efficiently Finding Higher-Order Mutants. In Proceedings of the 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE ’20), November 8–13, 2020, Virtual Event, USA. ACM, New York, NY, USA, 14 pages. https://doi.org/10.1145/3368089.3409713





Read the peer-reviewed publication