【问题标题】:Generate Rspec test for existing Rails 3 Model为现有 Rails 3 模型生成 Rspec 测试
【发布时间】:2013-04-25 02:21:08
【问题描述】:

我决定学习 Rspec,因为我更喜欢它的语法。所以我包含了rspec-rails gem 并运行了rails g rspec:install。我已经修改了我的 .rspec 和 rspec-helper 文件(使用 mocha 和 factory girl)。

然后,我使用rails g rspec:model search 为我的模型生成了规格文件。我的模型是search.rb,类名是Search

所以在我由 rspec:model 生成器生成的/spec/models/search_spec.rb 中,我有:

require 'spec_helper'

describe Search do
  describe "#merge_searches" do

  end
end

但是当我尝试运行测试时,我得到了错误:

Jans-MacBook-Pro-2:spec jan$ rspec models/search_spec.rb /Users/jan/Documents/ruby/js3/spec/models/search_spec.rb:3:in `': uninitialized constant Search (NameError)

我做错了什么?

【问题讨论】:

    标签: ruby-on-rails-3 rspec


    【解决方案1】:

    如果我没有名为 Search 的模型,我可以重现该错误。一旦我用内容创建app/models/search.rb

    class Search < ActiveRecord::Base
    end
    

    错误消失了。希望对您有所帮助。

    【讨论】:

    • 我使用的是 MongoID,所以我的 app/models/search.rb 仅以 class Search ... 开头
    • 很高兴你把它整理出来!
    • 其实我决定放弃了。我在这个小项目上使用 MongoDB,并且很难对其进行测试(例如,工厂女孩也不会工作)。我猜这个小网站将不需要对模型进行测试。仅对 /lib 内容进行单元测试和 capybara 集成测试。
    猜你喜欢
    • 1970-01-01
    • 2013-12-28
    • 1970-01-01
    • 2011-05-06
    • 2011-11-24
    • 2011-12-22
    • 1970-01-01
    • 2012-05-13
    • 1970-01-01
    相关资源
    最近更新 更多