【问题标题】:Rails: RSpec controller test passes without action being implemented, why?Rails:RSpec 控制器测试通过而没有执行任何操作,为什么?
【发布时间】:2009-07-12 21:47:54
【问题描述】:

我有以下 RSpec 示例正在传递:

describe UsersController  do
  it "should render new template on new action" do
    get :new
    response.should render_template("users/new")
  end
end

问题是我没有在 UsersController 上实现“新”操作。 谁能告诉我为什么这个测试通过了? 我是 RSpec 的新手,所以任何提示都将不胜感激!

【问题讨论】:

    标签: ruby-on-rails rspec


    【解决方案1】:

    当请求一个视图存在的动作,但动作没有定义时,Rails 将简单地渲染视图。因此,您的规范(正确)通过了。

    除了本规范之外,您可能还想测试特定实例变量的分配。示例:

    it "should assign the found articles for the view" do
      assigns[:article].should == [@article]
    end
    

    【讨论】:

    • 为什么当我浏览到“/users/new”时,我会收到“未知操作没有响应新操作”。 ?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-03
    相关资源
    最近更新 更多