【发布时间】:2010-04-26 07:23:39
【问题描述】:
我正在尝试 rspec,当它似乎没有加载我知道存在的数据库记录时,它立即碰壁。这是我相当简单的规范(还没有测试)。
require File.expand_path(File.dirname(__FILE__) + '../spec_helper')
describe SomeModel do
before :each do
@user1 = User.find(1)
@user2 = User.find(2)
end
it "should do something fancy"
end
我收到ActiveRecord::RecordNotFound 异常,说它找不到 ID=1 或 ID=2 的用户,我知道这是存在的。我将测试和开发数据库都设置为指向 database.yml 中的相同模式,所以这不应该是数据库混淆。在安装 gems(rspec、rspec-rails)和 gem.config 之后,我还运行了 script/generate rspec,包括 environment.rb 和 test.rb。知道我错过了什么吗?谢谢。
编辑
似乎我正在使用rake spec:models 运行测试,这清空了数据库,因此没有找到任何记录。当我使用% spec spec/models/some_model_spec.rb 时,一切正常。
【问题讨论】:
-
嗯,RSpec 不希望设置固定装置吗?我也有 rspec_model 生成器,但我不知道你在做什么是否需要这些生成器
-
可能是,我会检查一下 - 谢谢。
标签: ruby-on-rails unit-testing rspec