一般而言,如果我們?cè)陂_(kāi)發(fā)中使用過(guò)單元測(cè)試的話,那么我們的代碼bug就會(huì)少很多,可事實(shí)上是很少有開(kāi)發(fā)者愿意花時(shí)間寫(xiě)單元測(cè)試部分,這是因?yàn)轫?xiàng)目本身的代碼量和工作量已經(jīng)足夠大了,沒(méi)有足夠的精力再去做它。
這里有幾點(diǎn)討論:設(shè)置的行為方法,一般最好的測(cè)試實(shí)踐。實(shí)際上有兩種設(shè)置方法:+(void)setup;-(void)setup;類(lèi)方法(+(空白)設(shè)置)整個(gè)測(cè)試運(yùn)行期間只運(yùn)行一次。實(shí)例方法(-(void)setup)是在默認(rèn)模板,這是之前運(yùn)行每一個(gè)測(cè)試。希望在一個(gè)假想的未來(lái)版本的Xcode,這評(píng)論將被改變/ /設(shè)置代碼。調(diào)用此方法之前調(diào)用每個(gè)測(cè)試方法的類(lèi)。WINK眨眼通過(guò)這兩個(gè)方法,你描述的這種行為都是可能的。關(guān)于你的評(píng)論:“當(dāng)然開(kāi)發(fā)商不創(chuàng)建對(duì)象在一遍又一遍嗎?”我的答案是“是的,他們通常是”。一個(gè)受歡迎的縮寫(xiě)“好”第一單元測(cè)試:快孤立的可重復(fù)的自我驗(yàn)證及時(shí)的這個(gè)討論隔離是關(guān)鍵:測(cè)試不應(yīng)該依賴(lài)以往任何國(guó)家落后于其他測(cè)試。理想情況下,你應(yīng)該拆除并重新創(chuàng)建你的內(nèi)存中的核心數(shù)據(jù)為每個(gè)測(cè)試堆棧,所以你知道你從一張白紙開(kāi)始。在這篇文章中就是一個(gè)很好的例子,格雷厄姆·李。您想要使用一個(gè)內(nèi)存堆棧因?yàn)?你可以很容易地把它扔掉,和b)應(yīng)該是非??斓?因?yàn)樗皇莾?nèi)存而不觸及你的磁盤(pán)。如果你發(fā)現(xiàn)你的測(cè)試運(yùn)行緩慢的(不要過(guò)早優(yōu)化),那么我認(rèn)為合理的下一個(gè)步驟是創(chuàng)建堆棧+(空白)設(shè)置方法,但每次都創(chuàng)建一個(gè)全新的環(huán)境——(void)setup。
XCTestCase中的setup方法到底有什么目的呢?
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
- Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
- 轉(zhuǎn):http://www.itdecent.cn/p/d5fca0185e83 Xcode測(cè)試 前言 總算在今天把...
- 突然接到朋友的電話,她說(shuō)她堅(jiān)持不下去了,他想要跟異地戀男朋友分手。 我感到很詫異,好端端的兩個(gè)人,好端端的一段感情...