极客视点
极客时间编辑部
极客时间编辑部
113240 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/02:12
登录|注册

机器人伪装成人类贡献GitHub修复补丁

讲述:杜力大小:1.01M时长:02:12
近日,据外媒报道,一位名为“Repairnator”的机器人在 GitHub 上“卧底”数个月,查找错误并编写和提交修复补丁,结果有多个补丁成功通过并被采纳。
现代计算机程序非常复杂,在开发过程中不可避免地会出现 Bug,找到它们并编写补丁来进行修复,是大部分程序员的日常工作。
但是,查找和修复 Bug 是一项需要耗费大量资源和时间的任务。研究人员已经开发出了不少能让修复 Bug 过程自动化的机器人,但是它们往往效率很低,或者只能产生一些质量低下的代码,反而会拖慢工作的进度。因此,开发人员非常希望能够依靠快速、高质量的机器人来搜索错误代码,并编写补丁修复这些错误。
就在不久前,瑞典皇家理工学院的研究人员宣称,该学院的软件技术教授 马丁·蒙伯斯(Martin Monperrus)和他的朋友一起构建的机器人 Repairnator,经过测试和实验,已经可以发现错误并编写高质量的补丁了。
据了解,Repairnator 的任务是在 GitHub 上扫描并修复一些代码的 Bug,开发者团队进行了两轮测试,第一轮是在 2017 年 2 月到 12 月,Repairnator 在 14188 个 GitHub 项目的修复列表上,运行并扫描错误。在此期间,它总共分析了超过 11500 个失败的构建,其中有 3000 多个能被重现。然后,Repairnator 生成了针对其中 15 个问题的补丁,然而遗憾的是,由于补丁质量低、花费时间过长等问题,这些补丁都没有被接受。
第二轮测试是在 2018 年 1 月至 6 月,该团队没有具体说明他们对 Repairnator 做了哪些改进,但是该机器人在 1 月成功编写出了第一个被人类开发者接受的补丁。在之后的 6 个月里, 陆续又有 5 个补丁被采纳。
需要注意的是,Repairnator 必须在特定的软件生态系统中才能运行。 由于在过去的研究项目中专业知识更偏向 Java,因此,Repairnator 的原型实现更侧重于修复那些用 Java 编写的 GitHub 开源项目。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
15
沉浸
阅读
分享
手机端
快捷键
回顶部