2010-09-25 63 views
2

我想知道如何模擬IO /網絡類。例如,我有一個做FTP操作的類或寫入文件的類。我如何使用嘲笑模擬和單元測試這些類?如何模擬IO /網絡類?

我是C#/ NHibernate/Castle ActiveRecord/Rhino Mocks開發人員。

回答

1

使用Rhino Mocks,你只能模擬接口,抽象類(一般的虛擬方法)。因此,將您的網絡訪問代碼抽象爲接口,然後對它們進行模擬,以便單獨測試其他類,具體取決於它們。

您無法單獨測試需要連接到FTP服務器的代碼。這不再是一個單元測試,這是一個集成測試,嘲笑無法幫助你。

0

對於rhinomocks,您必須定義一個接口或抽象類,以便rhinomocks可以爲您創建代理/模擬對象。其他模擬框架(例如,typemockJustmock,兩者都是商業的)能夠模擬非抽象類,靜態類,非虛擬方法等。