Asp.net-Mvc
單元測試 MVC 控制器
我的 ASP.NET MVC 應用程序中的控制器根據幾個相當直接的規則預先填充了我的視圖顯示的表單數據。
在我的單元測試中涵蓋這似乎是一件好事。但我能看到的驗證正確數據是否放置在表單中的唯一方法是以一種不自然的方式從控制器中提取邏輯。
有人可以建議解決這個問題的方法嗎?
我發現的所有關於單元測試控制器的範例似乎都很瑣碎,例如驗證它是否返回了預期的視圖類型。我不確定我什至看到其中的價值。
您可以通過將返回的對象轉換為適當的類來進行測試,而不是使用它們的基類(預設返回)
例如,要測試預設值
AccountController,您需要這樣:var controller = new AccountController(); var result = controller.LogOn() as ViewResult; var model = result.Model as LogOnModel; Assert.IsTrue(model.RememberMe); // assuming you "pre-populated" enabled the checkbox檢查返回的對像是否填充了正確的數據對我來說似乎並不“不自然”,還是您的意思不同?