Page 60 - 《软件学报》2021年第9期
P. 60
2684 Journal of Software 软件学报 Vol.32, No.9, September 2021
Table 2 Automatic program repair tools
表 2 缺陷自动修复工具
名称 引用 发表时间 支持语言 分类 下载地址
HistoricalFix [45] 2016 Java HS https://github.com/xuanbachle/bugfixes
AllRepair [72] 2016 C/C++ HS https://github.com/batchenRothenberg/AllRepair
Angelix [33] 2016 C/C++ SC https://github.com/mechtaev/angelix/
Prophet [24] 2016 C/C++ SA http://www.cs.toronto.edu/~fanl/program_repair/prophet-rep
Refazer [86] 2017 C#/Python SA http://www.dsc.ufcg.edu.br/~spg/refazer/
NPEfix [63] 2017 Java MT https://github.com/SpoonLabs/npefix
DeepFix [8] 2017 C/C++ SA https://bitbucket.org/iiscseal/deepfix
Genesis [85] 2017 Java SA http://www.cs.toronto.edu/~fanl/program_repair/genesis-rep
ErrDoc [55] 2017 C/C++ MT https://github.com/yuchi1989/ErrDoc
ACS [25] 2017 Java SA https://github.com/Adobee/ACS
ssFix [51] 2017 Java HS https://github.com/qixin5/ssFix
JAID [74,75] 2017 Java SC https://bitbucket.org/maxpei/jaid/wiki/Home
S3 [77] 2017 Java SC https://xuanbachle.github.io/semanticsrepair/
Nopol [32] 2017 Java SC https://github.com/SpoonLabs/nopol/
DiffTGen [23] 2017 Java − https://github.com/qixin5/DiffTGen
CapGen [46] 2018 Java HS https://github.com/justinwm/CapGen
SketchFix [31] 2018 Java MT https://github.com/SketchFix/SketchFix
SimFix [29] 2018 Java HS https://github.com/xgdsmileboy/Simfix
Clara [88] 2018 Python SA https://github.com/iradicek/clara
FootPatch [80] 2018 Java/C/C++ SC https://github.com/squaresLab/footpatch
ARJA [36] 2018 Java HS https://github.com/yyxhdy/arja
MemFix [79] 2018 C/C++ SC http://prl.korea.ac.kr/MemFix/
Droix [62] 2018 Java MT https://github.com/stan6/droixbench
kGenProg [115] 2019 Java HS https://github.com/kusumotolab/kGenProg
AVATAR [91] 2019 Java SA https://github.com/SerVal-DTF/AVATAR
ConFix [47] 2019 Java HS https://github.com/thwak/ConFix
DeepRepair [84] 2019 Java SA https://github.com/SpoonLabs/astor
PraPR [44] 2019 JVM bytecode HS https://github.com/prapr/prapr
SequenceR [9] 2019 Java SA https://github.com/KTH/chai
TBar [11] 2019 Java MT https://github.com/SerVal-DTF/TBar
Fix2Fit [106] 2019 C/C++ MT https://github.com/gaoxiang9430/fix2fit
kPAR [99] 2019 Java MT https://github.com/SerVal-DTF/FL-VS-APR
Astor [116] 2019 Java HS/SA https://github.com/SpoonLabs/astor
iFixR [53] 2019 Java MT https://github.com/SerVal-DTF/iFixR
Refactory [52] 2019 Python HS https://github.com/githubhuyang/refactory
GenPat [93] 2019 Java SA https://github.com/xgdsmileboy/GenPat
SOSRepair [82] 2019 C/C++ SC https://github.com/squaresLab/SOSRepair
FixMiner [90] 2020 Java SA https://github.com/SerVal-DTF/fixminer_source
ARJA-e [41,42] 2020 Java HS https://github.com/yyxhdy/arja/tree/arja-e
JaRFly [100] 2020 Java HS https://github.com/squaresLab/genprog4java/
References:
[1] Gazzola L, Micucci D, Mariani L. Automatic software repair: A survey. IEEE Trans. on Software Engineering, 2017,45(1):34−67.
[doi: 10.1109/TSE.2017.2755013]
[2] Monperrus M. Automatic software repair: A bibliography. ACM Computing Survey, 2018,51(1):1−24. [doi: 10.1145/3105906]
[3] Xuan JF, Ren ZL, Wang ZY, Xie XY, Jang H. Progress on approaches to automatic program repair. Ruan Jian Xue Bao/Journal of
Software, 2016,27(4):771−784 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4972.html [doi: 10.13328/j.
cnki.jos.004972]
[4] Wang Z, Gao J, Chen X, Fu HJ, Fan XY. Automatic program repair techniques: A survey. Chinese Journal of Computers, 2018,
41(3):588−610 (in Chinese with English abstract).
[5] Li B, He YP, Ma HT. Automatic program repair: Key problems and technologies. Ruan Jian Xue Bao/Journal of Software, 2019,
30(2):244−265 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/5657.html [doi: 10.13328/j.cnki.jos.005657]
[6] Liu BB, Dong W, Wang J. Survey on intelligent search and construction methods of program. Ruan Jian Xue Bao/Journal of
Software, 2018,29(8):2180−2197 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/5529.html [doi: 10.13328/j.
cnki.jos.005529]