Wie man ein Modell erstellen, mit einer bestimmten id mit rspec und factory girl

Benutze ich:

gem 'rails', '3.2.11'
gem 'rspec-rails', '2.13.2'
gem 'webrat', '0.7.3'
gem 'factory_girl_rails', '4.1.0'
gem 'spork', '~> 0.9.0.rc'

Ich möchte zum testen meiner HP, wo ich immer einen link zu einem bestimmten Benutzer, so dass die Seiten-controller für die HP enthält:

@user = User.find(7)

Und die Ansicht von HP enthält:

link_to 'See user', @user

Das problem ist, dass alle tests fehlschlagen, da die test-Datenbank keine Benutzer mit der id 7. Ich habe versucht:

FactoryGirl.define do
  factory :user do
    name "Testuser"
    id "7"
  end
end

... aber das funktioniert nicht. Es kommt immer der Fehler:

Die Skillung ist diese:

describe "GET 'home'" do

    before(:each) do
      FactoryGirl.create(:user)
    end

    it "should be successful" do
      get 'home'
      response.should be_success
    end
end

Ausfall/Fehler: Holen Sie sich 'zu Hause'
ActiveRecord::RecordNotFound:
Konnte nicht finden, dass User mit der id=7

Die HP ist in Ordnung, die in Wirklichkeit nur der test schlägt fehl. Wie kann ich sicherstellen dieser test ist nicht zu Versagen?

  • Ich bin mir nicht sicher, ob dies funktionieren würde, aber versuchen, id = 7
  • Können Sie fügen Sie den code für Ihr Versagen spec, bitte?
  • Zeigen Sie den code der spec, wenn Sie wollen nützliche Hilfe. Bisher ist jeder erraten.
  • Sorry... ich habe den spec des fehlerhaften test.
InformationsquelleAutor user929062 | 2013-07-18
Schreibe einen Kommentar