Ruby 调试器(Debugger)

Ruby调试器

在了解Ruby调试器之前,让我们了解什么是调试器?- “调试器不过是用于测试程序,查找问题并在目标程序中解决问题的计算机程序”Ruby调试器是一个以相同方式工作的ruby工具,它可以测试和调试目标程序。事实是,Ruby是一种易于学习的语言,但同时也不能否认Ruby的代码中可能存在错误的事实,特别是当代码只有几行时。Ruby调试器通常随Ruby的标准发行版一起提供。

如果要加载ruby调试器,首先必须在命令行中键入“ -r debug”

如何使用Ruby Debugger?

这肯定是一个非常突出的问题,因为阅读理论很容易,但在实际世界中实现起来却很难。如果要使用Ruby调试器,请在命令提示符下编写以下语法,

 $ruby –r debug filename[, ...]

Ruby调试命令列表

以下是在调试文件的过程中可能需要的Ruby Debugging命令的完整列表。使用 ... ]是可选的。

  • b[reak] [< file| class>:]< line| method>
    如果要将断点设置为某些特定位置,则需要使用此命令。断点只是指针位置,在该位置可以出于调试原因而停止程序执行。

  • wat [ch] expression
    用于设置监视点。使用ch是可选的。

  • cat [ch](exception | off)
    此命令将捕捉点设置为表达式。ch的使用是可选的。

  • b [reak]
    此命令用于显示断点和监视点。

  • del [ete] [n]
    用于删除断点。ete的使用是可选的。

  • disp [lay] expression
    此命令用于显示表达式的值。

  • undisp [lay] [n]
    用于删除的显示n(whatever specified)

  • c [ont]
    通过使用此命令,use可以继续执行暂停的操作。

  • s [tep] [n]
    用于执行下n行,逐步进入方法。写提示是可选的。

  • n [ext] [n]
    用于执行下n行单步执行的方法。键入ext是可选的。

  • w [here]
    此命令用于显示堆栈帧。

  • f [rame]
    完全在哪里工作。

  • l [ist] [<-| n- m>]
    用于显示从m到n的源行。

  • up [n]
    用于在堆栈帧中上移n个(指定)级别。

  • down [n]
    用于向下移动n(specified)堆栈帧中的级别。

  • fin [ish]
    该命令用于完成当前方法的执行。

  • tr [ace] [on | off]
    用于打开或关闭跟踪模式。

  • q [uit]
    退出命令用于退出调试器。

  • v [ar] g [lobal]
    如果要显示全局变量,请使用此命令。

  • v [ar] l [ocal]
    如果要显示局部变量,请使用此命令。

  • v [ar] i [instance] object
    此命令用于显示对象的实例变量。

  • v [ar] c [onst] object
    此命令通过显示对象常数来提供帮助。

  • m [ethod] i [instance] object
    它显示对象的实例方法。

  • m[ethod] class| module
    用于显示类或模块的实例方法。

  • th [read] l [ist]
    如果要显示线程,请使用此命令。

  • th [read] c [ur [rent]]
    如果要显示当前线程,请使用此命令。

  • th [read] n
    用于停止指定线程。