iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
Software Development

AI 時代的 TDD:讓 AI 寫 Code,但不要讓它決定品質 系列

AI 可以加速 Red-Green-Refactor 循環的每一步,但「這個測試值不值得留、覆蓋夠不夠、重構要不要做」這些品質判斷,不能交給 AI 自己決定。這個系列會用真實踩坑案例,拆解 AI 寫測試時最容易忽略的品質陷阱,以及怎麼建立紀律讓 TDD 循環真的落實。

參賽天數 21 天 | 共 21 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文
DAY 1

Day 01:系列介紹——AI 時代為什麼更需要 TDD

前言 「AI 都已經能自動生成測試了,還需要學 TDD 嗎?」 這大概是我這幾年被問過最多次的問題之一。表面上聽起來很合理:以前寫測試要花時間,現在跟 AI c...

2026-09-09 ‧ 由 recca0120 分享
DAY 2

Day 02:TDD 的本質沒變——Red-Green-Refactor 三步驟快速複習

前言:三個步驟大家都會背,但真的知道每一步在防什麼嗎? 「Red-Green-Refactor 誰不知道?寫一個失敗的測試、讓它通過、再重構,這種基本功還需要花...

2026-09-10 ‧ 由 recca0120 分享
DAY 3

Day 03:AI 讓「寫測試」變快,但「寫對測試」的門檻沒有變低

前言:測試都通過了,為什麼還要懷疑? 「AI 幾秒鐘就能幫你的函式產生一整套測試,語法正確、結構完整、跑起來全部綠燈——這樣還不夠好嗎?」 這句話聽起來很合理,...

2026-09-11 ‧ 由 recca0120 分享
DAY 4

Day 04:案例——AI 生成的測試全綠,卻沒測到任何有意義的行為

前言:測試都通過了,為什麼還要懷疑? 「AI 幫這個方法寫了三個測試,全部綠燈,這樣應該可以放心合併了吧?」 這句話聽起來很合理——測試通過本來就是我們判斷「這...

2026-09-12 ‧ 由 recca0120 分享
DAY 5

Day 05:假陽性測試的三種樣貌——空斷言、恆真斷言、Mock 掉待測物件本身

前言:綠燈不等於「測到了」 「這個測試是綠的,代表這段邏輯是對的吧?」 Day 04 講過一個具體案例:AI 生成的測試全綠,卻沒測到任何有意義的行為。今天要把...

2026-09-13 ‧ 由 recca0120 分享
DAY 6

Day 06:Red 階段——AI 容易跳過「先看到測試失敗」這一步

前言:測試從沒紅過,你怎麼知道它會抓到問題? 「反正最後測試都是綠的,中間有沒有真的紅過一次,有差嗎?」 有差,而且差別很大。昨天講完假陽性測試的三種樣貌——空...

2026-09-14 ‧ 由 recca0120 分享
DAY 7

Day 07:為什麼「先看紅燈」比「有沒有寫測試」更重要

前言:檢查有沒有寫測試,是最容易被騙過的一種檢查 「這個 PR 有沒有寫測試?」這句話幾乎是每個團隊 code review 時的標準問句。它很好回答——打開檔...

2026-09-15 ‧ 由 recca0120 分享
DAY 8

Day 08:Green 階段——AI 傾向寫出「讓測試通過的最小手段」

前言:「用最少的程式碼讓測試通過」,這句話不是每個人聽起來都一樣 「Kent Beck 自己都說了,Green 階段就是要用最簡單的方式讓測試通過,AI 這樣做...

2026-09-16 ‧ 由 recca0120 分享
DAY 9

Day 09:案例——AI 為了讓測試綠燈,硬編碼了預期值

前言:測試綠了,是因為邏輯對了,還是因為它「記住了答案」? 「昨天講到 AI 在 Green 階段容易寫出『讓測試通過的最小手段』,聽起來有點抽象——最小手段到...

2026-09-17 ‧ 由 recca0120 分享
DAY 10

Day 10:Refactor 階段——AI 最容易跳過的一步,沒有安全網的「順手重構」

前言 「反正測試都綠燈了,AI 順手把旁邊那個函式也改乾淨一點,應該沒差吧?」 這句話聽起來像是效率的展現——都已經打開這個檔案了,看到旁邊有一段程式碼寫得不太...

2026-09-18 ‧ 由 recca0120 分享