CharmFL: A Fault Localization Tool for Python
Qusay Idrees Sarhan, Attila Szatmari, Rajmond Toth, Arpad Beszedes

TL;DR
CharmFL is a Python fault localization tool integrated with PyCharm that uses spectrum-based analysis to help developers efficiently identify faulty code segments, addressing a gap in existing tools for Python.
Contribution
We introduce CharmFL, a novel fault localization tool for Python that supports hierarchical coverage analysis and integrates seamlessly with PyCharm IDE.
Findings
Effective in identifying various fault types in Python programs
Supports hierarchical coverage analysis for detailed fault localization
Helps developers reduce debugging time
Abstract
Fault localization is one of the most time-consuming and error-prone parts of software debugging. There are several tools for helping developers in the fault localization process, however, they mostly target programs written in Java and C/C++ programming languages. While these tools are splendid on their own, we must not look over the fact that Python is a popular programming language, and still there are a lack of easy-to-use and handy fault localization tools for Python developers. In this paper, we present a tool called "CharmFL" for software fault localization as a plug-in for PyCharm IDE. The tool employs Spectrum-based fault localization (SBFL) to help Python developers automatically analyze their programs and generate useful data at run-time to be used, then to produce a ranked list of potentially faulty program elements (i.e., statements, functions, and classes). Thus, our…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software System Performance and Reliability
