2012-10-04 67 views

回答

1

當你需要實際訪問文件系統或其他系統您在這裏談論更多的一體化測試。

當單元測試你需要嘲笑這樣的事情時,你需要使用依賴注入,例如使用unity和「模擬」文件系統。

以下是一些好的地方尋找代碼嘲笑文件系統..

http://systemwrapper.codeplex.com/

http://systemwrapper.codeplex.com/

http://jolt.codeplex.com/

http://www.typemock.com/

上嘲諷一般信息。 ..

http://martinfowler.com/articles/mocksArentStubs.html#ClassicalAndMockistTesting

和下面的鏈接顯示瞭如何使用依賴注入與團結...

http://www.codeproject.com/Articles/254091/Implementing-Microsoft-Unity-Design-Pattern

親切的問候

馬修潔靈

1

你能寫的東西看起來像一個單元測試,將驗證文件I/O?絕對。

但你可能不應該。

你希望你的單元測試速度非常快,並且儘可能少的外部依賴。文件IO非常慢(相對而言),並且取決於一堆關於文件系統的細節。

在你的單元測試中 - 你可能只關心你的代碼成功地調用了寫操作或稱爲.Close()方法。你可以單元測試這種行爲。

如果您確實想測試您的應用程序是否與文件系統正確交互 - 您的問題就是集成測試或端到端測試;但不是單元測試。

相關問題