nkt*_*kyo 14 testing rspec ruby-on-rails
我正在通过(优秀)railstutorial.org网站上有一个关于rspec的基本问题.
当我在新用户模型上运行以下测试时,我收到"未知属性:用户名"消息和失败的测试.
before(:each) do
@attr = { :lname_e => "User", :fname_e => "Test", :email => "user@example.com", :username => "testUser" }
end
it "should create a new instance given valid attributes" do
User.create!(@attr)
end
Run Code Online (Sandbox Code Playgroud)
错误语法是
Failures:
1) User should create a new instance given valid attributes
Failure/Error: User.create!(@attr)
unknown attribute: username
# ./spec/models/user_spec.rb:11:in `block (2 levels) in <top (required)>'
Run Code Online (Sandbox Code Playgroud)
该字段位于users表(字符串)中,它在模型中为attr_accessible,在控制台中,我可以在测试中创建具有完全相同语法的用户.创建初始表后,通过迁移添加了此"用户名"字段,是否还需要在此处更新其他文件?
谢谢,
Dyl*_*kow 21
测试数据库中可能缺少该字段,但存在于开发数据库中(这就是控制台工作的原因).
尝试确保您的迁移都是最新的,然后更新测试数据库:
rake db:migrate
rake db:test:prepare
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3040 次 |
最近记录: |