- 紅燈、綠燈贱鄙、重構(gòu)
- KISS原則:keep it simple stupid (讓前述規(guī)范得以通過,且最簡單姨谷、最簡短)
- 總之逗宁,未使用TDD的情況下,單元測試的主要目標(biāo)是驗(yàn)證既有代碼梦湘;而在TDD中瞎颗,單元測試是預(yù)先編寫的,其主要目標(biāo)是定義需求和設(shè)計(jì)捌议,而驗(yàn)證只是副產(chǎn)品哼拔。與實(shí)現(xiàn)后再編寫測試相比,這樣做的一個(gè)結(jié)果是產(chǎn)品質(zhì)量更高
- 測試不僅提供了驗(yàn)證代碼的途徑瓣颅,還是可執(zhí)行的文檔
- 學(xué)會不去測試最終結(jié)果倦逐,而專注于當(dāng)前要開發(fā)的單元。這是為了加強(qiáng)信任宫补,因?yàn)槲覀儽仨毿湃嗡司帉懙拇a(輔助類)
- 僅當(dāng)所有測試都通過后才重構(gòu)僻孝。這樣做的優(yōu)點(diǎn)如下:重構(gòu)是安全的
- 設(shè)計(jì)——難以測試說明設(shè)計(jì)不佳
- 設(shè)計(jì)原則:YAGNI;DRY守谓;KISS;奧卡姆剃刀原理您单;SOLID
- 逐個(gè)規(guī)范并實(shí)現(xiàn)單元斋荞;編寫規(guī)范時(shí),我們將除當(dāng)前單元外的東西都隔離開來虐秦,并驗(yàn)證單元正確調(diào)用了其他單元
- BDD平酿。將TDD應(yīng)用于功能測試和集成測試
- TDD的好處之一是凤优,可執(zhí)行文檔始終是最新的。然而蜈彼,僅有通過單元測試獲得的文檔還不夠筑辨。所以我們需要BDD
- 只要時(shí)間足夠長,所有傳統(tǒng)文檔都將過時(shí)幸逆,唯一準(zhǔn)確的文檔是我們編寫的代碼
- 大多數(shù)情況下棍辕,其他文檔指的是較簡略的文檔,如概述还绘、系統(tǒng)的總體目標(biāo)楚昭、使用的技術(shù)、環(huán)境搭建拍顷、安裝抚太、構(gòu)建、打包以及其他類型的數(shù)據(jù)昔案。它們不提供詳細(xì)信息尿贫,更像是指南和快速入門。對于這些文檔踏揣,markdown格式的簡單README文件通常是最佳的
- BDD:可作為需求庆亡,可執(zhí)行,可對工作進(jìn)行驗(yàn)證呼伸,人人都能編寫和理解
- 遺留代碼就是不帶測試的代碼
- 遺留代碼存在的一種常見壞味是無法測試
- 重構(gòu)不能引入任何新功能身冀,即不應(yīng)編寫任何新規(guī)范
- “基本類型偏執(zhí)”壞味指的是使用基本數(shù)據(jù)類型表示域概念。例如括享,使用字符串表示消息搂根,使用整數(shù)表示金額,使用結(jié)構(gòu)體/字典/散列表示對象
- 總之铃辖,持續(xù)集成剩愧、持續(xù)交付和持續(xù)部署依賴于與實(shí)現(xiàn)代碼配套的測試,即依賴于TDD娇斩,還要求不使用分支或確保分支的存活時(shí)間極短(被頻繁地合并到主干)
- 請別忘了重構(gòu)代碼仁卷,刪除不再使用的舊開關(guān),讓代碼更整潔犬第、可讀性更高
Java測試驅(qū)動開發(fā)
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門橙垢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來垛叨,“玉大人,你說我怎么就攤上這事柜某∷栽” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵莺琳,是天一觀的道長还棱。 經(jīng)常有香客問我,道長惭等,這世上最難降的妖魔是什么珍手? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮辞做,結(jié)果婚禮上琳要,老公的妹妹穿的比我還像新娘。我一直安慰自己秤茅,他們只是感情好稚补,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著框喳,像睡著了一般课幕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上五垮,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼惶傻!你這毒婦竟也來了棍郎?” 一聲冷哼從身側(cè)響起,我...
- 序言:老撾萬榮一對情侶失蹤银室,失蹤者是張志新(化名)和其女友劉穎涂佃,沒想到半個(gè)月后静秆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡巡李,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了扶认。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片侨拦。...
- 正文 年R本政府宣布季研,位于F島的核電站,受9級特大地震影響誉察,放射性物質(zhì)發(fā)生泄漏与涡。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一持偏、第九天 我趴在偏房一處隱蔽的房頂上張望驼卖。 院中可真熱鬧,春花似錦鸿秆、人聲如沸酌畜。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽桥胞。三九已至,卻和暖如春考婴,著一層夾襖步出監(jiān)牢的瞬間贩虾,已是汗流浹背。 一陣腳步聲響...
- 正文 我出身青樓喳钟,卻偏偏與公主長得像屁使,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子奔则,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- 第十章 綜述 TDD 的最佳實(shí)踐 命名規(guī)約 1 將實(shí)現(xiàn)代碼和測試代碼分開src/main/javasrc/test...
- 本書簡介 英文名稱:Test-Driven Java Development作者:Viktor Farcic Al...
- 本文結(jié)構(gòu): 什么是 TDD 為什么要 TDD 怎么 TDD FAQ 學(xué)習(xí)路徑 延伸閱讀 什么是 TDD TDD 有...
- 這篇關(guān)于測試驅(qū)動開發(fā)(TDD)的文章將幫助您熟悉這個(gè)開發(fā)周期并使其適應(yīng)您的編碼方法蛮寂。 測試驅(qū)動開發(fā)(TDD)的概念...
- 碼農(nóng)的產(chǎn)品和服務(wù)大都是以軟件形式存在的,我們存在的價(jià)值之一就是快速提供高質(zhì)量的軟件產(chǎn)品或服務(wù)易茬。如何保障軟件的高質(zhì)量...