Rails 2.3.8,Ruby 1.8.6:获取可视调用树/图表,调用什么方法?

RoU*_*oUS 6 ruby profiling ruby-on-rails

我有一个中等复杂的Rails应用程序.主控制器(应用程序在那里执行的操作)具有单一操作方法.(它不是一个标准的RESTful应用程序;它充当中介,并且对如何调用它有外部限制.)

但是,它确实有很多方法和许多过滤器,以及不断增长的测试套件.结构随着时间的推移发生了很大的变化,我不再相信为之前编写的测试设置的一些摩卡期望仍然合适.

有很多人在使用该应用程序,因此我正在构建一本用于编写功能测试的食谱.'当您想要使用/不使用[那些]副作用'时,使用[这些]期望和断言等等.

调用树/图形在编写这样的文档时非常有用.除了过滤器之外,甚至可以静态地从源代码中获取 - 通过了解Rails的知识 - 关于所有内容模型的东西,所以静态不是一个好主意.:-)

我已经尝试使用RubyProf和我的功能测试来获得一个调用树,但我得到的是与测试方法以及内核和Rails部分相关的树 - 而且没有任何控制器方法.(至少不是我发现的;分析创建了很多小文件,而不是一个大文件.)

找到控制方法的失败可能 -将涉及到如何操作方法被调用通过 send,而不是一些更"正常"的机制.

Blah,等等,等等......就我迄今为止尝试过的事情而言.

是否有一个很好的工具来为Rails 2.3.8应用程序构建who-calls-what流程图/调用树?

谢谢!

Flo*_*nt2 3

您尝试过https://github.com/tmm1/rbtrace吗?我还没有在 Rails 上尝试过,所以我不确定它是否适合你的情况。