我認爲我自己對於TDD場景還很新。但是發現無論我使用哪種方法(模擬框架或存根自己的對象),我發現我必須編寫大量代碼才能創建模擬數據。我喜歡加載對象來創建內存數據庫的想法。但是我不喜歡的是,爲了創建模擬數據的唯一目的,使用大量的代碼來混淆我的測試。當數據需要考慮所有不同情況時尤其如此。爲單元測試創建模擬數據
我很樂意提供一些更好的方法。
在我看來,我應該能夠從一些數據存儲中將數據加載到一個已知狀態,然後我可以使用每個測試方法之前在測試設置/初始化中加載的狀態快照被執行。這將滿足正確的測試實踐,同時提供便利,讓我專注於編寫測試,而不是編寫代碼來「手動」創建測試數據。
這解決了雜亂的問題,但我仍然需要模擬所有數據,只需在一個單獨的項目中。也許,正如你所建議的那樣,我可以使用第三方框架加載數據並將其轉換爲我的對象模型。根據webjedi的建議,nDbUnit可以工作。 – 2009-02-27 19:27:10