Ruby on rails 在脚本\控制台中快速调试帮助程序方法

Ruby on rails 在脚本\控制台中快速调试帮助程序方法,ruby-on-rails,ruby,Ruby On Rails,Ruby,如何在script\console中快速调试助手方法。我说的是一次又一次地进行更改,然后进行调试 使用模型方法要容易得多,因为我所要做的就是使用 重新加载 为了测试更新后的代码,而为了测试助手方法,我必须这样做 foo=ActionView::Base.new foo.extend YourHelperModule 每次我都想测试一个变化 什么是重新加载!做我可以修改它来添加上面的代码行吗?我建议不要使用脚本控制台,而是在Test::Unit或rspec中编写测试。谷歌应该给你指出正确的方向,那

如何在script\console中快速调试助手方法。我说的是一次又一次地进行更改,然后进行调试

使用模型方法要容易得多,因为我所要做的就是使用 重新加载 为了测试更新后的代码,而为了测试助手方法,我必须这样做

foo=ActionView::Base.new foo.extend YourHelperModule

每次我都想测试一个变化


什么是重新加载!做我可以修改它来添加上面的代码行吗?

我建议不要使用脚本控制台,而是在Test::Unit或rspec中编写测试。谷歌应该给你指出正确的方向,那里有大量的信息。

我认为如果不入侵Rails,你是无法做到这一点的。但是,rails调试器中有一个变通方法-调试助手方法:

1) gem安装ruby调试

2) ruby脚本/服务器--调试器

3) 放入某个视图并在浏览器中打开该页面

4) 服务器窗口“变成”控制台,您可以在其中调试助手方法

5) “return”命令结束调试

如果修改helper方法并再次运行调试器,则将获得该方法的最新版本

关于调试器的更多信息在这里:

如果你在“一次又一次”地做某事,那么你应该将它自动化。假设您知道helper函数应该做什么,那么正如其他地方提到的,您应该能够为它编写一个(或多个)测试

下面是一个测试应用程序的示例。它位于我的
test/unit
目录中:

require 'test_helper'

class ApplicationHelperTest < ActiveSupport::TestCase

  include ApplicationHelper

  test "number_as_pct shows 2dp as default" do
    assert_equal "1.10%", number_as_pct(0.011)
  end
  test "number_as_pct shows more dp when required" do
    assert_equal "1.1000%", number_as_pct(0.011, :precision => 4)
  end
end
需要“测试助手”
类ApplicationHelperTest4)
结束
结束