昨天在公司內部開會,分享我的單元測試經驗,當我在提到有關dao的增刪改操作一般是直接使用HibernateTemplate的相關方法,所以沒有必要對相關dao方法進行測試時。

public?void?saveComment(CsComment?comment)?
{
????????getHibernateTemplate().saveOrUpdate(comment);
????}就此引發了一場爭論,有同事提出疑問說,為什么不需要對增刪改方法進行測試,增刪改方法也是DAO中一個具體實現功能,那么針對于這個功能就應該進行測試。
對于這個問題,我的理解是,首先應該明確單元測試的目的是什么,究竟是測試功能,還是測試代碼
如果要測試功能,那么一個功能應該是縱向的,dao,bl,action都會有相應的增刪改方法,那么3者之間的測試又有什么不同呢?
所以,單元測試,就是在檢測你的代碼,如果你的一個方法只是簡單的對其他的方法調用,如上面這個方法,那么我認為就沒有必要花費這個代價來進行單元測試,我們不是為了寫測試代碼而寫單元測試,單元測試保證的是我的代碼質量,不是在測試我的功能。功能測試是由相應的功能測試來完成。
posted on 2007-02-07 14:41
rocket 閱讀(2325)
評論(10) 編輯 收藏