Archive / INF Seminars / INF_2022_09_29_Mohammad_Rezaalipour
USI - Email

FauxPy: A Fault Localization Tool for Python Programs


In February 2019, the Software Institute started its SI Seminar Series. Every Thursday afternoon, a researcher of the Institute will publicly give a short talk on a software engineering argument of their choice. Examples include, but are not limited to, novel interesting papers, seminal papers, personal research overview, discussion of preliminary research ideas, tutorials, and small experiments.




USI Campus EST, room D0.02, Sector D
16:30 - 17:30

Mohammad Rezaalipour
Software Institute, Switzerland
Fault localization is the process of finding buggy program entities, such as statements or functions, in a program’s source code. Several families of fault localization techniques have been proposed in the literature, using different sources of information or targeting different program entities. However, despite its popularity and its error-proneness due to being a dynamically typed language, not much research has been done on fault localization for the Python programming language. In this seminar, I will present a live demo of FauxPy, a fault localization tool I developed for Python. Currently, FauxPy is the only fully automated tool that implements several fault localization techniques for Python programs. FauxPy currently supports spectrum-based, mutation-based, stacktrace-based, and predicate switching fault localization. During the demo, I will demonstrate some of these fault localization techniques and compare their effectiveness and efficiency. Using FauxPy, we plan to conduct the first fault localization empirical study on Python programs in different domains (from end-user applications to data science programs such as those based on neural networks).

Moe is a PhD student at the ATOM group, working under the supervision of Prof. Carlo Alberto Furia, and he works on implementing different techniques to aid the debugging of data science programs. Moe joined SI three years ago as a PhD student, and before that, he did his Master’s degree at Shahid Beheshti university in Tehran, researching software testing and automated program repair.