2016-06-30 25 views
0

我有一個問題,關於Rspec生成的文件rails_helper.rb。我已經做得很好,但有些東西我沒有得到。我知道必須進入該文件(支持目錄,數據庫清理程序..)。我看到至少有數百個人需要這個文件的例子進入功能,模型和控制器測試。rails_helper.rb文件(測試通過,即使我不需要它)

考慮這個例子,我在我的應用程序:

require 'rails_helper' 

describe User do 

    it "is valid with valid attributes" do 
    user = build(:user) 
    expect(user).to be_valid 
    end 

    it "is invalid when username is blank" do 
    user = build(:user, username: "") 
    expect(user).to_not be_valid 
    end 
                                                                                              it "is invalid when username is too long" do 
    user = build(:user, username: "a" * 21) 
    expect(user).to_not be_valid 
    end 

    it "is invalid when username is too short" do 
    user = build(:user, username: "a" * 3) 
    expect(user).to_not be_valid 
    end 
end 

如果我只是刪除了「require_helper.rb」 - 沒有任何反應?測試仍然通過?我有20個測試,我刪除了這條線,他們仍然通過(在一些我試圖直接使用ActiveRecord模型沒有工廠的女孩,它仍然通過)!使用

林:factory_girl,數據庫清理,rspec的3和軌道4.2

有一些I'm失蹤?不應該有某種錯誤嗎?

TNX, 湯姆

回答

0

項目是否有一個.rspec文件中的根?這通常用於自動要求RSpec幫助程序。

+0

yes有一個.rspec文件,但它只包含spec_helper.rb。 rails_helper.rb應該加載整個導軌堆棧,但spec_helper.rb適用於所有非導軌類(至少這就是我讀的)。 –

+1

您的項目是否使用Spring?如果你在rspec命令前加上'DISABLE_SPRING = 1',你會看到相同的行爲嗎? –

+0

是的,你是對的,這是因爲春天(抱歉忘了提及我使用它)。只是禁用它,鐵軌抱怨說,它不能解決恆定的用戶。 Tnx安迪:) –

相關問題