2011-10-21 35 views
1

我目前正在使用Rhino Mocks嘲笑框架。你如何模擬一個WebViewPageBase的實例及其Rhino Mocks模型或任何其他模擬框架?當我運行以下單元測試時,嘗試訪問WebViewPageBase.Model屬性時會引發異常。MVC 3:如何模擬一個WebViewPage的實例<T>?

 var repo = new Rhino.Mocks.MockRepository(); 

     System.Web.Mvc.WebViewPage<IEnumerable<Tuple<string>>> page = repo.DynamicMock<System.Web.Mvc.WebViewPage<IEnumerable<Tuple<string>>>>(); 

     Assert.IsNotNull(page.Model);//exception thrown, not a fail on Assert 

這會更容易用不同的嘲諷框架來完成嗎?

回答

0

您是否確定要以這種方式獲取視圖頁面,因爲它沒有模型等,因爲它尚未完成設置。

更典型的情況是,你會測試控制器,並檢查它的返回值,如果你想檢查它,它將包含呈現的html。

假設你真的想單元測試這個,那麼我沒有看到你的代碼有任何內在錯誤。你可以嘗試Moq而不是Rhino,這是我使用的。

這個問題也可能是有關您的問題沒有犀牛如何處理抽象類:

Mock abstract class default behaviour with Rhino

相關問題