關(guān)于android/ios開發(fā)中的單元測試
很多開發(fā)人員,特別是小公司的開發(fā)人員,基本上從來不用單元測試,認(rèn)為直接開發(fā)既快又好,還要做單元測試?yán)速M(fèi)時(shí)間和精力。但大公司相反,比較看重單元測試。因?yàn)橛袉卧獪y試的代碼,相對(duì)穩(wěn)定可靠,而且如果開發(fā)人員習(xí)慣了以測試為驅(qū)動(dòng)的開發(fā),也會(huì)覺得這樣的方式很不錯(cuò)。
以測試為驅(qū)動(dòng)的開發(fā)模式是:開發(fā)之前,先想好要做什么,然后把對(duì)外的接口設(shè)計(jì)好,就可以先寫單元測試的代碼。之后再進(jìn)行實(shí)際代碼的開發(fā),開發(fā)完成之后,再跑一遍之前寫的單元測試,如果失敗則調(diào)試,直到最終成功,會(huì)讓開發(fā)人員特有成就感。
單元測試也特別適合于敏捷開發(fā),開發(fā)新的功能以后,你不知道會(huì)不會(huì)對(duì)以前已經(jīng)穩(wěn)定的功能產(chǎn)生影響。當(dāng)然你可以手工測試一下,但一次兩次手工測試沒問題,多了就會(huì)發(fā)現(xiàn)還是單元測試好,自動(dòng)跑一遍就行,更符合程序員善于使用工具的優(yōu)秀品質(zhì)。
單元測試的工具,Android上使用junit加上ant腳本配合,ios上使用ocunit或者ghunit。雖然工具不同,但思想類似。
當(dāng)然,并不是所有項(xiàng)目都一定要做單元測試最好。本人以前的項(xiàng)目,有用單元測試的,也有不用的,這里總結(jié)一下使用單元測試的2個(gè)原則。
1. 項(xiàng)目的規(guī)模原則。 如果是小項(xiàng)目,開發(fā)完就扔給客戶,后期基本不用維護(hù)。那就偏向于直接開發(fā),極快又好,你做得單元測試再多客戶也看不見,做的快還能被客戶夸。如果是大項(xiàng)目,你做第n個(gè)模塊的時(shí)候,第1個(gè)模塊的細(xì)節(jié)已經(jīng)忘得差不多了,那這時(shí)候有單元測試可以幫助你確認(rèn)前面模塊的可靠性。
2. 因人而異原則。每個(gè)人的開發(fā)水平和性格不一樣,有些人天性謹(jǐn)慎,開發(fā)的代碼bug比較少,有些人比較粗放,bug就相對(duì)比較多。有了bug就需要測試和調(diào)試,當(dāng)測試和調(diào)試的時(shí)間大于開發(fā)的時(shí)間時(shí),建議下個(gè)項(xiàng)目使用單元測試模式開發(fā)。單元測試可以盡早讓你發(fā)現(xiàn)代碼中的問題,bug越早發(fā)現(xiàn)越容易解決。
posted on 2014-01-24 16:14 順其自然EVO 閱讀(377) 評(píng)論(0) 編輯 收藏 所屬分類: android