Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis 2019
DOI: 10.1145/3293882.3330577
|View full text |Cite
|
Sign up to set email alerts
|

TBar: revisiting template-based automated program repair

Abstract: We revisit the performance of template-based APR to build comprehensive knowledge about the effectiveness of fix patterns, and to highlight the importance of complementary steps such as fault localization or donor code retrieval. To that end, we first investigate the literature to collect, summarize and label recurrently-used fix patterns. Based on the investigation, we build TBar, a straightforward APR tool that systematically attempts to apply these fix patterns to program bugs. We thoroughly evaluate TBar o… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
155
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
6
1
1

Relationship

4
4

Authors

Journals

citations
Cited by 197 publications
(155 citation statements)
references
References 85 publications
0
155
0
Order By: Relevance
“…We successfully generatred 17 fine-grained fix templates, which were evaluated to be effective in patching 17 out of 20 real-world crashed apps. CraftDroid can benefit the automatic program repair (APR) community [18,20,[29][30][31][32][33][34][35] in establishing a new means to augment datasets. CraftDroid can also benefit the developer community in recommending effective patches to fix their crashed apps.…”
Section: Discussionmentioning
confidence: 99%
“…We successfully generatred 17 fine-grained fix templates, which were evaluated to be effective in patching 17 out of 20 real-world crashed apps. CraftDroid can benefit the automatic program repair (APR) community [18,20,[29][30][31][32][33][34][35] in establishing a new means to augment datasets. CraftDroid can also benefit the developer community in recommending effective patches to fix their crashed apps.…”
Section: Discussionmentioning
confidence: 99%
“…Concretely, we systematically try to map FixMiner's patterns with patterns in the literature. To that end, we rely on the comprehensive taxonomy of fix patterns proposed by Liu et al [52]: if a given FixMiner pattern can be mapped to a type of change in the taxonomy, then this pattern is marked as compatible with patterns in the literature.…”
Section: Rq2: Compatibility Between Fixminer's Patterns and Apr Litermentioning
confidence: 99%
“…Indeed, for the comparison, we do not conduct exact mapping where the elements should be the same, given that literature patterns can be more abstract than the ones yielded by FixMiner. For example, Modify Method Name (i.e., FP10.1) is a sub-fix pattern of Mutate Method Invocation Expression (i.e., FP10), which is about replacing the method name of a method invocation expression with another appropriate method name [52]. This fix pattern can be matched to any statement that contains a method name under method invocation expression.…”
Section: Fix Patternsmentioning
confidence: 99%
“…List of the reviewed APR tools in this study. jGenProg (Martinez and Monperrus, 2016), jKali (Martinez and Monperrus, 2016), jMutRepair (Martinez and Monperrus, 2016), HDRepair (Le et al, 2016), Nopol (Xuan et al, 2017), ELIXIR (Saha et al, 2017), JAID (Chen et al, 2017), ssFix (Xin and Reiss, 2017), CapGen (Wen et al, 2018), SketchFix (Hua et al, 2018), ACS (Xiong et al, 2017), SimFix (Jiang et al, 2018), SOFix (Liu and Zhong, 2018), LSRepair (Liu et al, 2018c), kPAR (Liu et al, 2019a), FixMiner (Koyuncu et al, 2020), AVATAR (Liu et al, 2019b), TBar (Liu et al, 2019c), PraPR (Ghanbari et al, 2019), ARJA (Yuan and Banzhaf, 2018), Hercules (Saha et al, 2019), VFix (Xu et al, 2019).…”
Section: Tablementioning
confidence: 99%