一個ASP.NET MVC 3 Web應用程序有幾個部分組成——模型(model)、控制器(controller)、路由處理器(route-handler)、視圖(view)、html-helper、客戶端代碼等。其中大部分模塊均可以進行單元測試,有一些則須要集成測試。關於如何讓測試更易維護以及如何避免它們過於脆弱,有一些最佳實踐可以幫獲得你。html
如下是一些測試相關的資源介紹:框架
一、不只是actions,你還可使用MvcScaffolding生成單元測試的基架模板 (scaffolding) ;ide
二、使用自定義HTML Helpers,而不要在視圖中編寫大量邏輯,由於前者更容易進行單元測試。另外,測試自定義html-helper時應避免硬編碼html元素;單元測試
三、使用相似Specflow 的BDD框架編寫端到端的驗收測試;測試
四、儘管在路由表以外添加新的路由很容易破壞已有路由,但你能夠經過對路由表進行單元測試來避免該問題;編碼
五、打開視圖編譯開關。 這雖然並不徹底是單元測試,但它能夠幫助發現運行時才能看到的錯誤;設計
六、若是UI變化不大,可使用WaTiN來測試UI。另外,能夠經過使用頁面對象(Page Object)調整UI設計改動,來讓集成測試變得稍微靈活些;htm
七、使用一款JS測試框架,如使用Jasmine來測試JavaScript。對象
您還知道什麼其餘的測試ASP.NET MVC應用程序的技巧嗎?請留言支招。ip