昨天在公司內(nèi)部開(kāi)會(huì),分享我的單元測(cè)試經(jīng)驗(yàn),當(dāng)我在提到有關(guān)dao的增刪改操作一般是直接使用HibernateTemplate的相關(guān)方法,所以沒(méi)有必要對(duì)相關(guān)dao方法進(jìn)行測(cè)試時(shí)。

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