【发布时间】:2011-10-21 15:55:24
【问题描述】:
这是用于在客户控制器中测试节目的 rspec 代码:
it "'show' should be successful" do
#category = Factory(:category)
#sales = Factory(:user)
#customer = Factory(:customer, :category1_id => category.id, :sales_id => sales.id)
category = mock_model('Category')
sales = mock_model('User')
customer = mock_model(Category, :sales_id => sales.id, :category1_id => category.id)
get 'show' , :id => customer.id
response.should be_success
end
这是 rspec 中的错误:
CustomersController GET customer page 'show' should be successful
Failure/Error: get 'show' , :id => customer.id
ActiveRecord::RecordNotFound:
Couldn't find Customer with id=1003
# c:in `find'
# ./app/controllers/customers_controller.rb:59:in `show'
# ./spec/controllers/customers_controller_spec.rb:50:in `block (3 levels) in <top (required)>'
rspec 测试通过 Factory 创建的真实记录(参见 rspec 代码中的#ed)
模拟有什么问题?谢谢。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 rspec2