3
我有涉及到兩個同名的操作方法在我的手一個很常見的場景 - 一個用於處理POST請求,另一個處理GET請求:我應該測試一個ASP MVC項目中的屬性嗎?
public ActionResult Add()
{
return View();
}
[HttpPost]
public ActionResult Add(Question question)
{
repository.Add(question);
return RedirectToAction("Index");
}
正如你所看到的,操作方法是有區別的通過屬性。如果我刪除了HttpPost
屬性,那麼運行時將會以黃色屏幕死機而崩潰。
我的問題是:寫一個單元測試使用反射來驗證這個特定的方法是用HttpPost
屬性裝飾是否合理?我有這樣做的意願,因爲如果有人意外刪除了該屬性,服務器將崩潰。
你不會因爲添加單元測試而傷害任何東西,但如果你認爲有人可能會刪除'HttpPost'屬性,那麼你應該和他們談一談。 – Jonesopolis 2014-11-23 23:18:27
@Jonesy我代碼獨奏,但你的評論確實與我產生共鳴。 – 2014-11-23 23:20:02
如果你爲每一件可能出錯的事情添加一個測試,你將花費大量的時間寫測試......如果你沒有問題,那麼一定要......但是,你通常必須決定測試的最佳價值在哪裏。 – 2014-11-24 00:13:31