SunisDown's NoteBook
latest
Programming language
Tools
Others
GoBeansDB
Bitcask
Column Store
Developer Testing
DEBUGING
寻找缺陷
科学的调试
IF 语句
Minimize Filesystem Caching Effects
如何取一个好的变量名
Distributed System
Database
SunisDown's NoteBook
Docs
»
Others
»
DEBUGING
Edit on GitHub
DEBUGING
¶
调试可能会占到开发周期的 50%,懂调试的工程师可能只需要花普通工程师1/3的时间来做调试工作。
寻找缺陷
¶
科学的调试
¶
通过可重复的实验收集数据
根据相关数据设计构造一个假说
设计一个实验来证明或者反证这个假说
证明或者反证假说
根据需要重复上面的步骤
上面是大概的步骤
下面是方法
将错误的状态文档下来
如果一个BUG只是时不时的出现,那几乎没有可能找出产生BUG的原因。能够让BUG稳定的复现是工作中比较有挑战的事情。
确定错误的来源(也就是那个Error/Fault)
收集产生缺陷的相关数据
分析所收集的数据,并构造对去缺陷的假设
确定怎样去证实或者证伪这个假设。比如通过测试或者通过检查代码
按照 2-c 的方法对假设作出结论
修补缺陷
对修补的地方进行测试
查找是否有类似的错误
Read the Docs
v: latest
Versions
latest
Downloads
htmlzip
On Read the Docs
Project Home
Builds
Free document hosting provided by
Read the Docs
.