1

我想測試我的數據庫作爲一組集成測試的一部分。我已經測試了所有我的代碼單元,針對mock等進行了測試,但是我需要確保所有存儲過程和代碼在持續運行時都能正常運行。我昨天做了一些Google搜索,在這裏發現了一篇不錯的文章http://msdn.microsoft.com/en-us/magazine/cc163772.aspx,但看起來有點老了。我想知道是否有任何「更好」的方式來清理數據庫,恢復到預期的狀態或回滾準備好每個測試?我編碼在C#4,mvc3使用SQL 2008.單元測試數據庫

回答

2

我們使用DbUnit來設置和/或拆除測試之間的數據庫,以及在測試期間斷言數據庫狀態。

+0

是.net還是你使用Ndbunit? – lloydphillips

+1

我們正在使用它與java堆棧,但它看起來像Ndbunit爲.net提供相同的功能。 –

2

這很愚蠢 - 簡單,所以它可能不是你所需要的,但我所做的是保持數據庫備份在給定的理智狀態 - 通常是當前的生產數據庫是什麼。然後,對於每個構建,我們還原該數據庫(使用Jenkins,NANT和SQLCMD),應用當前的構建更新腳本並運行我們的測試套件。這樣做的好處是可以爲您提供一個「已知數量」的數據庫,並驗證升級腳本是否正常工作。