SEJul 27, 2017

Enabling Mutation Testing for Android Apps

arXiv:1707.09038v375 citations
Originality Incremental advance
AI Analysis

This work addresses the need for domain-specific mutation testing in Android app development, representing an incremental improvement over traditional methods.

The paper tackles the problem of applying mutation testing to Android apps by proposing MDroid+, a framework that includes a taxonomy of 262 Android fault types and 38 mutation operators, achieving effective fault representation compared to existing tools.

Mutation testing has been widely used to assess the fault-detection effectiveness of a test suite, as well as to guide test case generation or prioritization. Empirical studies have shown that, while mutants are generally representative of real faults, an effective application of mutation testing requires "traditional" operators designed for programming languages to be augmented with operators specific to an application domain and/or technology. This paper proposes MDroid+, a framework for effective mutation testing of Android apps. First, we systematically devise a taxonomy of 262 types of Android faults grouped in 14 categories by manually analyzing 2,023 software artifacts from different sources (e.g., bug reports, commits). Then, we identified a set of 38 mutation operators, and implemented an infrastructure to automatically seed mutations in Android apps with 35 of the identified operators. The taxonomy and the proposed operators have been evaluated in terms of stillborn/trivial mutants generated and their capacity to represent real faults in Android apps, as compared to other well know mutation tools.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes