2010-08-04 37 views
0

我在我的單元測試中的代碼中使用了這種代碼。Rails單元測試中的助手函數

test "should be awesome" do 
    assert true 
end 

我使用FactoryGirl而不是燈具。

我發現我重複自己很多,並有輔助功能將是非常有用的。在單元測試中創建和調用助手函數的最佳方法是什麼?有沒有一個before_filter就像它在控制器(我試圖把它放入,但它只是一個未定義的方法)。任何幫助表示讚賞!

回答

5

您可以將實用函數添加到單元測試中,而不會出現問題。只要你不叫他們把它們命名爲「test_something」,它們就不會作爲單元測試運行。然後你可以用你實際的單元測試方法調用它們(你使用的格式歸結爲在類中有一個方法)。

所以:

那些即將所有的地方使用
test "should be awesome" do 
    assert_general_awesomeness 
    assert true 
end 

private 

def assert_general_awesomeness 
    assert true 
end 

實用的方法可以去test_helper,他們將提供給所有的測試。您也可以選擇一個模塊,將其與您的測試混合以提供常用的實用方法。

如果您在進行單元測試之前進行常規調用,您可以輸入setup方法,該方法將在每次測試之前調用。