调试是每个SW的工作的一部分,因为大家的代码都会有bug。找出来并改正它使我们必须做的事情。
对于Erlang,可能一些初学者只知道根据log来分析定位问题。代码量不大的时候,这种方式很有效简单。但是当代码量很大的时候,log就显得很勉强了,毕竟打印的log也是有限的,不足以支持找出问题的根本原因。这个时候,如果只凭添加新的log来寻找bug效率是很低的。
GDB是很强大的调试工具,对于C,C++的程序来说。其实,Erlang也有内建的调试工具:Debugger
怎么使用Debugger?帮助手册中有专门一个章节用来讨论这个话题。
对于一个suite,看了帮助手册之后就知道怎么使用Debugger来调试。但是对于大的项目来说,通常会有成百上千个suite,这个时候怎么来启动Debugger调试呢?这篇文档没有说,它是在run_test的帮助文档里面提及的。
run_test -step +....