通过运行功能测试来调试控制器方法

时间:2012-07-19 21:56:41

标签: ruby-on-rails-3.1 devise tdd ruby-debug

我正处于运行功能测试时需要逐步执行控制器方法的情况。我使用ruby-debug来调试我的应用程序。我的应用程序是使用ruby-1.8.7的rails 3.1应用程序。我可以使用

调试我的代码

rails server --debugger OR rails console --debugger

我也可以通过在模型中插入“debugger”来停止代码并运行它的相应单元测试。

但我无法对控制器做同样的事情。那就是我无法通过在控制器的方法中插入“调试器”来停止代码并运行它各自的功能测试。

以前有人遇到过这个问题吗?

此外,我使用设计进行身份验证,因此我需要将以下行添加到test_helper

class ActionController::TestCase
  include Devise::TestHelpers

  def login_user
    @request.env["devise.mapping"] = Devise.mappings[:user]
    @user.confirm!
    sign_in @user
  end
end

不确定我是否会以任何方式影响调试器。

1 个答案:

答案 0 :(得分:3)

当我运行功能测试时,我无法停止在我的控制器方法中插入的调试器,因为我正在使用before_filter