AndroFL: Evolutionary-Driven Fault Localization for Android Apps
We present our tool, ANDROFL, that provides an infrastructure for an evolutionary algorithm-based test-suite generation backed by a statistical fault localization module for diagnosing faults. ANDROFL’s evolutionary test-generator supports configurable fitness functions (e.g., coverage, diagnos- ability metrics like Ulysis). The statistical fault localization engine supports popular metrics like Ochiai, Tarantula and Barinel, and allows adding custom fault localization metrics. We evaluated ANDROFL on 20 open-sourced apps from F-Droid, and demon- strates significant efficiency gains: it reduces debugging effort by 74% (median EXAM score) compared to random testing— enabling developers to pinpoint faults ≈ 4× faster. Furthermore, ANDROFL localizes 25% and 50% more faults compared to random testing in the top-5 and top-10 ranked list in worst case ranking scenario.