4
Ayende前段時間寫了一套關於如何Repositories are the new Singletons模式的文章。我已經閱讀了他們的所有內容,我認爲並且我同意他的幾點看法。大多數情況下,我看到有數十個存儲庫的項目,這些存儲庫只是爲了抽象一個ORM的用法,它已經抽象了數據庫訪問。存儲庫是單元測試必需的東西嗎?
避免他們之後,我開始有一些問題,因爲一些奧姆斯是難以模擬軟件件,或至少EF是隔離我的UT代碼。 Ayende的一些項目使用內存數據庫進行測試,但即使它工作正常,我也不想這樣做。
所以,這是我的問題:我不喜歡有幾十個典型的資源庫,也沒有通用的存儲庫既不不過,我想有一個簡單的方法來隔離我的代碼。
當前版本庫僅對UT有用嗎?
注意:我說的數據庫訪問,不是抽象其他類型的如遠程服務的數據源。
我認爲OP是在ORM之上提出一個關於使用存儲庫的問題。 ORM通常會提供一些你想要的現成副作用,但可能很難進行單元測試(EF)。 –
這是正確的,我的問題是關於ORM上的存儲庫。 – lontivero
我的答案是關於ORM上的倉庫。您仍然必須使用ORM編寫查詢,並且應該測試這些查詢。 –