2010-11-11 58 views

回答

3

您可以定義一個存儲庫接口,並在此存儲庫的實現中使用WebClient。然後你的控制器將與存儲庫一起工作,因爲它是一個接口,它很容易被嘲弄。現在你會說這只是委託單元測試現在使用WebClient的存儲庫的實現問題,而這個問題不是可以模擬的。這個問題的答案是,這不再是一個單元測試,並坦率地說,測試這樣的方法:

public string FetchData(string url) 
{ 
    using (var client = new WebClient()) 
    { 
     return client.DownloadString(url); 
    } 
} 

沒有太大的意義,因爲你正在測試WebClient類,我希望已經被完成其作者在雷德蒙德。

相關問題