2017-08-04 75 views
0

我的測試:實例變量可在單一測試,但不完整的測試套件

def setup 
    @seminar = seminars(:one) 
end 

test "Auto user_number" do 
    debugger 
    post students_path, params: { students: [{ first_name: "Noob", 
           last_name: "Sauce" }], 
           ss: { seminar_id: @seminar.id } } 
    student = assigns(:student) 
    assert_equal student.id, student.user_number 
end 

當我單獨運行這個測試文件,一切都經過符合市場預期。但是當我運行完整的測試套件時,它會在@ seminar.id上打破。

當我在調試器中暫停並調用@seminar時,結果爲零。

我已經爲研討會(:一個)檢查了研討會夾具。此外,這個相同的燈具在十幾個其他測試文件中工作正常。

在此先感謝您的任何見解。

回答

0

事實證明,這個問題是由另一個具有與此控制器相同類名稱的控制器引起的。

該試驗包含定義的類內

class StudentsControllerTest < ActionDispatch::IntegrationTest 

由於一些魯莽的剪切和粘貼的,我有另一個控制器類具有完全相同的線定義它。這在某種程度上導致設置功能不能在其中一個類中運行。

乾杯!

相關問題