请选择 进入手机版 | 继续访问电脑版

修复bug的12个关键步骤

发表于 2016-06-18 22:51 显示全部楼层 19 352

1.明确目的。仔细查阅异常报告,确定是否是个bug,找出各种有用的信息发现问题的症结,予以重现。再次检查是否与报告发生重复。如果发生重复,那看看曾经的相关人员是如何处理的。
2.准备工作——找出正确的代码,用排除法清理工作区域。
3.匹配测试环境。如果客户正在操作计算机配置,那么此过程可以跳跃。
4.明确代码的用途,确保现有测试工具一切正常。
5.好了,现在可以出发钓鱼去咯——重现和诊断错误。如果你不能做到重现,那你就不能证明你已经完成修复工作。
6.编写测试案例,或者通过现成的测试案例来捕获bug。
7.进入修复模式——请务必确保不会影响到其他任何部分。但是,在开展修复工作之前,可能你还要包揽重构工作,因为只有这样,你才能无所顾忌地捣鼓代码。而且事后回归测试,还能确保你不会加入任何新的bug。
8.整理代码。通过一步一步重构,让你的代码更易于理解,更安全。
9.找别人来审查一下,当局者迷旁观者清。
10.再次检查此修复过程。
11.试着不从主线出发,以检查这些bug是否会影响其他支线。合并这些变化,处理代码中的差异,回顾所有的审查和测试等工作。
12.思考。好好想一想哪里错了以及为什么错了?为什么你的修复会起效?这种类型的bug还会出现在哪里?在《 The Pragmatic Programmer》一书中,Andy Hunt 和Dave Thomas也如是指出“如果一个bug需要耗费你很多时间,那么一定要好好弄清楚原因”。此外,还需要思考的是,怎么做才能吸取经验教训,将来在类似的 问题上不再栽跟头?以及,我们采用的方法、使用的工具是否还有可以改进的地方?以及这些bug的影响和严重程度。
 找到bug,还是修复bug,哪个需要更多时间?或许建立一个测试环境、重现问题和测试bug所需的时间,要远远多于找到bug和修复bug的时间。不过对于一小部分显而易见的bug,找到它们很简单——不过修复起来可能就不尽如人意了。

回复 使用道具
举报
begeekmyfriend

发表于 2017-03-28 08:44 显示全部楼层

回复 支持 反对 使用道具
举报
昨夜一厕狼

发表于 2017-03-12 09:41 显示全部楼层

回复 支持 反对 使用道具
举报
森之树

发表于 2017-03-06 04:23 显示全部楼层

围观楼主

回复 支持 反对 使用道具
举报
挽梨

发表于 2017-02-27 22:07 显示全部楼层

支持!支持!!

回复 支持 反对 使用道具
举报
破葫芦

发表于 2017-02-22 23:34 显示全部楼层

回复 支持 反对 使用道具
举报
无戒

发表于 2017-02-21 00:10 显示全部楼层

观后纵想法再多,也不如一句回复实在!

回复 支持 反对 使用道具
举报
cocoabird

发表于 2017-02-20 12:05 显示全部楼层

回复 支持 反对 使用道具
举报
腐女大作战

发表于 2017-02-20 01:58 显示全部楼层

路过,支持一下

回复 支持 反对 使用道具
举报
晴空万里

发表于 2017-02-20 01:58 显示全部楼层

回复 支持 反对 使用道具
举报
12下一页

发表新文章
bechange

小码哥会员

20

学分

131

学币

359

积分

小码哥会员

Rank: 3Rank: 3

积分
359

小码哥一周年勋章小码哥Android学员勋章活动达人勋章

Ta的主页 发消息
精华帖排行榜

精彩推荐

  • 关注小码哥教育