2015-01-04 36 views
0

我正在使用Rails 4以及它所附帶的測試框架。Rails中的數據庫測試

我正在使用需要嚴格測試內部一致性的關係數據庫。在這種情況下,這是一個運動統計數據庫,每晚更新球員統計數據。

當新的數據每天晚上到達時,我需要運行如下測試:
- 玩家統計的總數等於團隊的數量。
- 球隊統計總數等於聯盟的總和。
- 勝負總和等於比賽結果。
- 等等。

現在我將我的開發數據庫複製到測試中,並在我的單元測試旁邊的/test/models/目錄中運行。

這是一個尷尬的設置,因爲我的數據庫測試代碼並不包含單元測試的正確含義,並且它不依賴於fixture,因爲Rails文檔建議使用此文件夾。

我的問題是:在Rails中,數據庫測試的最佳做法是什麼?

回答

0

這並不是真正的古典意義上的測試,所以將它包含在單元測試中並沒有意義。有至少兩個很好的解決方案:

  1. 在飛行中計算團隊和聯盟的統計數據。儘管如此,聽起來並不是這樣。
  2. 當您將新數據添加到數據庫時,請檢查一致性。如果一個記錄/值破壞了內部一致性,請不要將其添加到數據庫中。