身為一個在軟體開發領域打滾多年的「Old School」工程師,深知測試的重要性,也深刻體會到從零開始建立測試文化的挑戰。
隨著生成式 AI 興起,GitHub Copilot、Claude、ChatGPT 等工具確實讓測試
程式碼產生變得容易,但也帶來新問題:工程師雖能快速產生測試程式碼,
卻因跳過基礎學習歷程,而缺乏測試程式碼的識讀與設計能力。
這系列將分享我過往在公司內部推動測試教學到團隊實踐的完整歷程,從基礎原則與框架,到相關套件與工具,再深入進階工具與整合測試,最後探索 AI 輔助測試的功能。
這不只是技術教學,更是老派工程師對 AI 時代測試文化的反思與實踐。
前言:AI 時代,為什麼還要談測試? 在這個已經是大部分開發工程師都在用 ChatGPT、GitHub Copilot、Claude 的時代,可能有人會問:「既...
前言:選擇測試框架的重要性 在 Day 01 先瞭解到既使現在 AI 發展突飛猛進的時候,程式開發工程師還是必須要瞭解測試的基礎,並且要清楚知道 FIRST 原...
前言:從基礎到進階的躍進 在 Day 02 我們建立了 xUnit 的基礎知識,包含框架選擇、基本使用方式,以及建立第一個測試專案。今天我們要深入 xUnit...
前言:現代測試 Assertions 的核心價值 在過去幾年的測試開發經驗中,我一直是 Fluent Assertions 的忠實使用者。它的流暢語法、豐富的...
今日目標 在 Day 04 認識了 AwesomeAssertions 的基礎應用後,今天我們將學習進階技巧與複雜情境應用。透過複雜物件比對、自訂 Assert...
前言 寫測試程式時,經常會遇到這樣的問題:「我寫的測試夠嗎?」、「還有哪些程式碼沒有被測試到?」 Code Coverage(程式碼涵蓋範圍) 是用來回答這些問...
前言 在前面的學習路程中,我們已經建立了單元測試的基礎: Day 01 的測試金字塔了解測試策略 Day 02 打造第一個測試專案 Day 03 深入 AAA...
前言 前面我們已經學會了單元測試的核心技能: Day 01 建立測試金字塔的觀念基礎 Day 02 打造第一個測試專案 Day 03 深入 AAA 模式與 x...
前言 現在我們碰到一個在進行設計與測試時所遇到的一個常見問題:到底該不該測試 私有(private)和 內部(internal) 成員?這不只是技術問題,更是設...
前言 在前一天的學習中,我們探討了私有與內部成員的測試策略,深入理解了封裝與測試需求之間的平衡。我們學會了何時應該測試 internal 成員,以及如何透過重構...