我正在尝试使用Rspec测试控制器的这一部分:

@supercar = Supercar.find(params[:id])


这是我的控制器规格,用于测试上述部件:

before (:each) do
  @supercar = Factory :supercar
end

describe "show" do

  it "assigns the requested supercar to the @supercar" do
    get :show, :id => @supercar.id
    assigns(:supercar).should == @supercar
  end
...


但是,我尝试运行命令rake db:migrate,但仍然收到此错误:

Failure/Error: @supercar = Factory :supercar
     ActiveRecord::StatementInvalid:
       Could not find table 'supercar'

最佳答案

解决方案是运行以​​下命令:

rake db:test:prepare


通过在其中加载方案,它正在准备测试数据库。

关于ruby-on-rails - RSpec错误:测试找不到表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19884017/

10-14 00:23