当我做一些功能测试时,minitest-spec-rails出错了

时间:2013-06-18 09:17:12

标签: ruby-on-rails minitest

在我的Gemfile中:

group :test do
  gem 'minitest-spec-rails'
end

我的测试文件在rail_root / test / functional / publisher_controller_test.rb

# -*- encoding : utf-8 -*-
describe PublisherController do

  describe "GET #signin" do
    it "responds successfully with an HTTP 200 status code" do
      get :signin
      assert_response :success
    end
  end
end

我的单元测试工作正常,但是当我运行时

ruby -Itest test\functional\publisher_controller_test.rb"

出错了,这是错误:

test/functional/publisher_controller_test.rb:2:in `<main>': 
    uninitialized constant PublisherController (NameError).

我只是不知道为什么它可以找到我的模型但找不到控制器。

1 个答案:

答案 0 :(得分:0)

Rails期望控制器名称是复数,如下所示:

PublishersController

您的测试使用的是单个控制器名称PublisherController,该名称不存在。这可能是由使用生成器时的拼写错误引起的。

要解决此问题,请将Publisher更改为Publishers。请记住也要更改文件名。