iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
Software Development

你就是都不寫測試才會沒時間:Kuma 的 30 天 Unit Test 手把手教學,從理論到實戰 (Java 篇) 系列

「我們因為沒時間,所以不做單元測試。」

沒這種事!你們就是因為都不做單元測試,才會老是沒時間。

沒時間重構,沒時間思考設計,沒時間Scrum,沒時間好好把前後端職責講清楚…。生活中有太多太多的沒時間,但總歸一句,你連最基本的「功能需求」都不能在寫完功能的當下保證了,你要怎麼做後面那些「高端」的事情?你要怎麼真正「快得起來」?

本系列從基本的單元測試基本結構開始,慢慢帶入架構、設計、與模式等概念,讓讀者可以藉由閱讀本系列文章,慢慢了解單元測試的多種功能、重要性、與不同場景下較適合的寫法。最終可以嗅出壞味道,並「重構」成可讀性較高、耦合度較低的程式。

鐵人鍊成 | 共 30 篇文章 | 120 人訂閱 訂閱系列文 RSS系列文
DAY 11

Day 11 「我以火力掩護你」在測試的保護下重構:消除重複

「班長:班長命令你實施敵火下作業,試問單兵該如何處置?」『單兵:報告班長,請班長以火力掩護我,完成敵火下作業。』「班長:好!我以火力掩護你。」在寫這篇時,筆者突...

2021-09-11 ‧ 由 Kuma 分享
DAY 12

Day 12「可惡想要」單元測試、Code Smell 與重構 - Feature Envy 篇

圖片來源:https://disp.cc/b/115-9Z5x 從這一篇起,我們會一連進行幾篇跟「重構與壞味道」有關的討論。其中會列出幾個在工作中非常容易遇到的...

2021-09-12 ‧ 由 Kuma 分享
DAY 13

Day 13 「難兄難弟」 單元測試、Code Smell 與重構 - Data Clump 與 Primitive Obsession 篇

圖片截自三立新聞 與筆者年紀相當的朋友,肯定還記得小時候有個非常紅的電示節目叫「龍兄虎弟」吧。當時可謂萬人空巷,紅到整個節目被挖角到友台去變身「龍虎綜藝王」,搞...

2021-09-13 ‧ 由 Kuma 分享
DAY 14

Day 14 「不殘而廢」單元測試、Code Smell 與重構 - Data Class 篇

圖片來源:Wikipedia 大家聽過「帕拉林匹克運動會(帕奧)」嗎?它是自 1960 ~ 70 年代開始,專為身心障礙者舉辦的國際體育賽事,於 1990 年代...

2021-09-14 ‧ 由 Kuma 分享
DAY 15

Day 15 「一切皆空」單元測試、Code Smell 與重構 - Null 篇

一切皆空,影片來源:YouTube 一般人以為佛教說的空,,等於什麼都沒有,是消極並悲觀的,其實不是。世上宗教追溯到最後,大多都來自對眼前事物起源的探討,佛教也...

2021-09-15 ‧ 由 Kuma 分享
DAY 16

Day 16 「聽從你的蜥蜴腦」單元測試、Code Smell 與重構 - If 篇

你有聽過「蜥蜴腦」嗎?如果你讀過 The Pragmatic Programmer,你應該還有印象。蜥蜴腦是大腦中最原始的部分,為甚麼叫蜥蜴腦呢?因為人腦的這個...

2021-09-16 ‧ 由 Kuma 分享
DAY 17

Day 17 「提槍上陣」在測試保護下重構出 State 設計模式

報告班長,圖片截自網路 大家有聽過「報告班長」嗎?這部 1987 年的電影,當年推出後一炮而紅,帶領一陣中華民國軍教片的風潮,由庾澄慶演唱的同名片尾曲也為這位歌...

2021-09-17 ‧ 由 Kuma 分享
DAY 18

Day 18 「春暖鴨先知」TDD 來了

古語有云:「竹外桃花三兩枝,春江水暖鴨先知。」春天不會早上起來敲你家門,跟你說他來了。冬天進入春天的過程,是一天一天變化的。等你發現春天來臨時,外頭早已開遍桃花...

2021-09-18 ‧ 由 Kuma 分享
DAY 19

Day 19 「完美不完美」TDD 的困難之處

圖片截自聯合新聞網 筆者最近在看一個邀請影視明星來進行專業運動的節目:「全明星運動會」。節目是蠻有趣的,這卻讓筆者不禁思考,為什麼真正專業的運動員,甚至是國手,...

2021-09-19 ‧ 由 Kuma 分享
DAY 20

Day 20 「就是真誠」TDD 的實彈演習:Magneto Effect

打球像做人 上圖是筆者幾年前拿網路上的圖來東湊西湊,拼出來的桌面,本只是拿來練 Photo Impact,沒想到幾年後發現蠻多人轉發的,甚至有人拿來再創作,放在...

2021-09-20 ‧ 由 Kuma 分享