Computer Science > Software Engineering
[Submitted on 13 Dec 2018 (this version), latest version 8 Jan 2019 (v2)]
Title:Attention Please: Consider Mockito when Evaluating Newly Released Automated Program Repair Techniques
View PDFAbstract:Automated program repair (APR) has caused widespread concern in recent years with many techniques being proposed. Meanwhile, a number of benchmarks have been established for evaluating the performances of APR tools and Defects4J is a wildly used database among them. However, bugs in a later released project, Mockito, do not receive much attention in recent evaluations. In this paper, we aim to figure out whether we should consider Mockito bugs when evaluating APR tools. Our findings show that: 1) Mockito bugs are not more complex for repairing compared with bugs from other projects; 2) state-of-the-art tools have fixed some bugs with the same repair patterns as Mockito bugs; but 3) state-of-the-art tools possess poor performances on Mockito bugs (Nopol can only correctly fix one bug while SimFix and CapGen cannot fix any bug in Mockito even if all the buggy points are exposed). We conclude from the results that the breakthrough in this project may represent a huge improvement in repairing abilities and we should consider Mockito when evaluating newly released APR tools. We further find out a unique repair action existing in Mockito bugs named external package introduction. This may shed light on future researches about APR techniques.
Submission history
From: Shangwen Wang [view email][v1] Thu, 13 Dec 2018 11:46:29 UTC (628 KB)
[v2] Tue, 8 Jan 2019 00:32:34 UTC (538 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.