我使用Pry gem(http://pryrepl.org)来测试我的程序。有时会出现异常,所以我使用以下语法:
require "pry"
begin
statement 1
statement 2 *
statement 3
rescue => e
binding.pry
end
当“声明2”出现例外时,我在救援条款中得到了一次窥探。我可以检查我的变量等,“e.回溯”显示异常的原因,以及哪一行引起的,等等。然后我通常会在源文件中做一些修改,以避免下次出现异常。但是我不想再次启动我的程序,因为它是一个很长的时间再次到达“声明2”。所以我的问题是我如何退出Pry会话并继续我的“声明3”程序?如果我尝试键入“继续”或“下一步”,我只得到错误消息。
2条答案
按热度按时间mum43rcc1#
所以我的问题是我如何退出Pry会话并继续我的“声明3”程序?
如果pry-debugger不适合你,那么:
例如:
--输出:--
当然不行,如果你的问题是,
如果我的程序在随机的一行抛出了一个错误,我如何才能让pry在下一行继续执行呢?
...
如果我尝试键入“继续”或“下一步”,我只得到错误消息。
好的执行在这里:
hivapdat2#
我不认为这是可能的改变来源和继续执行后,你这样做。我会尝试将pry语句放置在语句2附近,然后重新运行。