我一直在閱讀有關MVC,其中作者認爲可測試性是MVC的主要優勢之一。他們會將其與ASP.NET WebForms進行比較,以及在WebForms中測試代碼的難度。單元測試ASP.NET代碼
我明白這很難,但有人可以解釋一下如何編寫單元測試以測試舊代邏輯背後的代碼嗎?
我一直在閱讀有關MVC,其中作者認爲可測試性是MVC的主要優勢之一。他們會將其與ASP.NET WebForms進行比較,以及在WebForms中測試代碼的難度。單元測試ASP.NET代碼
我明白這很難,但有人可以解釋一下如何編寫單元測試以測試舊代邏輯背後的代碼嗎?
背後的代碼是在類方法平原(與另一類,唯一的區別是,這類從頁對象繼承)
因此,它是可以測試的。 由於這些方法緊密結合web.ui控件(如網格),因此出現了大多數問題;他們並不容易假冒。 如果你沒有僞造UI控件,你也在測試UI控件的內部工作原理,這有點過頭了。
在過去,我使用模式模型視圖展示器測試了aspnet webforms。我能夠用這種模式測試代碼,因爲我將條件邏輯/循環/ etc抽象爲一個不在webforms框架內的獨立類。
留在webforms代碼中的東西只不過是一些屬性和頁面加載中的一個調用來初始化演示者類本身。
然後每個事件處理程序將簡單地將工作傳遞給演示者類。
我花了很多時間使用這種模式,發現它使測試變得更加友好,但與aspnet mvc相比,它有很大的工作量