單元測試究竟是測試什麼?

昨天在公司內部開會,分享我的單元測試經驗,當我在提到有關dao的增刪改操作一般是直接使用HibernateTemplate的相關方法,所以沒有必要對相關dao方法進行測試時。
ExpandedBlockStart.gifContractedBlock.gifpublic void saveComment(CsComment comment) dot.gif{
InBlock.gif        getHibernateTemplate().saveOrUpdate(comment);
ExpandedBlockEnd.gif    }

就此引發了一場爭論,有同事提出疑問說,爲什麼不需要對增刪改方法進行測試,增刪改方法也是DAO中一個具體實現功能,那麼針對於這個功能就應該進行測試。

對於這個問題,我的理解是,首先應該明確單元測試的目的是什麼,究竟是測試功能,還是測試代碼
如果要測試功能,那麼一個功能應該是縱向的,dao,bl,action都會有相應的增刪改方法,那麼3者之間的測試又有什麼不同呢?
所以,單元測試,就是在檢測你的代碼,如果你的一個方法只是簡單的對其他的方法調用,如上面這個方法,那麼我認爲就沒有必要花費這個代價來進行單元測試,我們不是爲了寫測試代碼而寫單元測試,單元測試保證的是我的代碼質量,不是在測試我的功能。功能測試是由相應的功能測試來完成。98603.html

rocket 2007-02-07 14:41 發表評論
發佈了1 篇原創文章 · 獲贊 0 · 訪問量 5706
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章