2014-12-03 56 views
1

我希望將不同數量的記錄保存到數據庫以進行不同的測試。一次測試的目的是查看數據庫中只有一條記錄的方法行爲,而另一條可能是查看該方法如何處理十條記錄。我知道燈具是將數據加載到測試數據庫的首選方式,但據我所知,燈具是靜態的,不能用於特定測試。因此,我在一些測試中使用CRUD操作。大多數這些測試都是從刪除被測表中的所有記錄開始,然後添加適合特定測試的記錄。在單元測試中正確使用CRUD操作

依賴於CRUD操作並且不使用Fixture數據的測試放在我的測試結束,所以它們不會干擾使用Fixtures的測試。我是新來的測試在Rails中,並想知道是否繞過Fixtures並在單元測試中使用CRUD操作是一種好的/不好的做法?

回答

1

你會看到從使用燈具到工廠到PORO(「普通舊式Ruby對象」)的各種答案,但是我認爲一般情況下,你想在工作時儘可能地減少或消除數據庫交互單元測試級別,而更多的用於集成或驗收測試。

在進行單元測試時,考慮輸入和輸出以及每個「測試單元」發送/接收信息的方式可能會有幫助。

在這個主題上有很多書籍,文章和帖子,但最終我會推薦實用性和理想世界觀之間的平衡。

您可能會發現這個有趣的:

https://www.youtube.com/watch?v=qPfQM4w4I04

+1

視頻幫了不少忙。非常感謝你! – Steve 2014-12-03 04:04:52