iT邦幫忙

tdd相關文章
共有 158 則文章
鐵人賽 Software Development DAY 29

技術 Day 29 - 案例研究:一位 會用 AI 開發的 TDD 開發者的一天

昨日回顧與今日目標 在 Day 28 的探討中,我們審視了在專業環境中使用 AI 的倫理、版權與隱私議題,並認識到作為一個負責任的開發者,我們需要擁抱 AI 的...

鐵人賽 Software Development DAY 28

技術 Day 28 - AI 開發的倫理、版權與未來展望

昨日回顧與今日目標 在 Day 27,我們深入探討了人機協作的過程,學會了如何批判性地看待 AI 的建議,並認識到人類開發者在架構設計、業務理解和最終決策上的核...

鐵人賽 Software Development DAY 27

技術 Day 27 - 人機協作的藝術:當 AI 的建議與你想法不同時

昨日回顧與今日目標 在 Day 26 的精彩實戰中,我們成功地打通了 ATDD 的“最後一公里”,同時也完成了從「業務價值」到「程式碼實現」再回到「業務價值驗證...

鐵人賽 Software Development DAY 26

技術 Day 26 - ATDD 實戰 (二):用 TDD 實現「步驟定義」,打通E2E流程

昨日回顧與今日目標 在 Day 25 中,我們成功地啟動了 ATDD 流程,我們利用 AI 撰寫了用來描述「購物車折扣」業務需求的 .feature 檔案,並執...

鐵人賽 Software Development DAY 25

技術 Day 25 - ATDD 實戰 (一):用 godog 定義第一個業務場景

昨日回顧與今日目標 在 Day 24,我們提升了思考的維度,從開發者內部的 TDD,躍升到了跨團隊協作的 ATDD,我們學到了 Gherkin 的 Given-...

鐵人賽 Software Development DAY 24

技術 Day 24 - 迎接 ATDD:當測試成為「對話」的起點

昨日回顧與今日目標 在 Day 23,我們體驗了 TDD 實踐中最棘手的敵人——遺留程式碼,我們學會了利用 AI 生成「特性測試」,為前人留下的舊程式碼建立起保...

鐵人賽 Software Development DAY 23

技術 Day 23 - 利用 AI 為既有程式碼補上「特性測試」

昨日回顧與今日目標 在 Day 22 的實戰中,我們利用 AI 成功地克服了 Go 語言的併發挑戰,我們學會了如何生成併發測試來捕捉競爭條件,並用 TDD 的方...

鐵人賽 Software Development DAY 22

技術 Day 22 - AI 輔助併發測試:處理 Go 語言的核心挑戰

昨日回顧與今日目標 在 Day 21,我們成功地將 AI 轉變為我們的專業QA,利用它的窮舉能力,為我們的程式碼增加了大量邊界條件測試,極大地提升了程式碼的可用...

鐵人賽 Software Development DAY 21

技術 Day 21 - 使用 AI 窮舉邊界:讓你的測試無懈可擊

昨日回顧與今日目標 在 Day 20,我們完成了一次 AI TDD 實戰,從零開發了一個 Gin API 端點。我們證明了,即使在涉及框架和 HTTP 的場景下...

鐵人賽 Software Development DAY 20

技術 Day 20 - AI TDD 完整演練:開發一個簡易的 API 端點 (Gin 框架)

昨日回顧與今日目標 在 Day 19,我們將 AI 的協作能力提升到了一個新的層次,我們不僅讓它生成程式碼,更讓它扮演了 Code Reviewer 和 QA...

鐵人賽 Software Development DAY 19

技術 Day 19 - AI 輔助重構與測試覆蓋:讓 AI 成為你的 Code Reviewer

昨日回顧與今日目標 在 Day 18 的完整實戰中,我們成功地指揮 AI,遵循 G-P-T-R 模式完成了一個微型 Kata。我們體驗了如何透過精準的 Prom...

鐵人賽 Software Development DAY 18

技術 Day 18 - AI 詠唱術:從需求到產品的完整 TDD 演練

昨日回顧與今日目標 在 Day 17 中,我們成功整合了 AI 好同事——GitHub Copilot,但我們也需要能夠意識到,一個只會瘋狂寫 producti...

鐵人賽 Software Development DAY 17

技術 Day 17 - 迎接 AI 隊友:設定 GitHub Copilot 的協作環境

昨日回顧與今日目標 在 Day 16 的理性探討中,我們面對了 TDD 的適用邊界,我們認識到,TDD 雖是利器,卻非萬能的銀彈。 在過去的兩週裡,我們投入了大...

鐵人賽 Software Development DAY 16

技術 Day 16 - 何時不該用 TDD?誠實面對其限制與權衡

昨日回顧與今日目標 在 Day 15,我們反思了從 TDD Kata 中學到的寶貴經驗,正面回應了「沒時間寫測試」的迷思,並釐清了單元測試在測試金字塔中的核心地...

鐵人賽 Software Development DAY 15

技術 Day 15 - TDD 實戰回顧與核心問答

昨日回顧與今日目標 在過去的幾天裡,我們從經典的 FizzBuzz 到充滿挑戰的字串計算機,我們親手、完整地走過了數次 TDD 的「紅-綠-重構」循環,我們看到...

鐵人賽 Software Development DAY 14

技術 Day 14 - 字串計算機實戰 (二):處理兩個及多個數字

昨日回顧與今日目標 在 Day 13,我們為字串計算機打下了堅實的基礎,成功地透過兩個快速的 TDD 循環處理了「空字串」和「單一數字」的情況,我們甚至還體驗了...

鐵人賽 Software Development DAY 13

技術 Day 13 - 字串計算機實戰 (一):處理空字串與單一數字

昨日回顧與今日目標 在 Day 12,我們認識了新的挑戰——字串計算機 Kata,並為它搭建好了獨立的 stringcalc 套件,最重要的是,我們已經用 TD...

鐵人賽 Software Development DAY 12

技術 Day 12 - 進階 Kata 挑戰:字串計算機 (String Calculator)

昨日回顧與今日目標 在 Day 11,我們行雲流水地完成了整個 FizzBuzz Kata,深刻地體會到,TDD 是如何透過一個個微小的「紅-綠-重構」循環,安...

鐵人賽 Software Development DAY 11

技術 Day 11 - Kata 演練:TDD 如何優雅地完成 FizzBuzz

昨日回顧與今日目標 在 Day 10,我們漂亮地完成了第一個 TDD 循環,讓我們的 Generate 函式能夠正確處理普通數字,我們擁有了一個通過的測試,這既...

鐵人賽 Software Development DAY 10

技術 Day 10 - Kata 演練:FizzBuzz (二) - 最簡單的實作與重構 (綠燈 -> 重構)

昨日回顧與今日目標 在 Day 9,我們成功地點亮了第一盞紅燈,我們為 FizzBuzz 問題定義了最簡單的一個案例: Generate(1) 應該回傳 &qu...

鐵人賽 Software Development DAY 9

技術 Day 9 - Kata 演練:FizzBuzz (一) - 寫下第一個失敗的測試 (紅燈)

昨日回顧與今日目標 在 Day 8,我們成功搭建了 TDD Kata 練習的專案,一個結構清晰的 go-tdd-kata 專案。我們將開始 TDD 的黃金循環:...

鐵人賽 Software Development DAY 7

技術 Day 7 - 處理依賴:測試中的 Mock 與 Stub 基礎

昨日回顧與今日目標 在 Day 6,我們透過「表格驅動測試」掌握了組織和擴充測試案例的強大模式。到目前為止,我們測試的 Add 函式是一個美好的「純函式」——沒...

鐵人賽 Software Development DAY 6

技術 Day 6 表格驅動測試 (Table Driven Tests) : Go 語言的測試慣用法

昨日回顧與今日目標 在 Day 5,我們學會了使用 testify 套件來撰寫優雅且富有表達力的斷言,並掌握了 assert 和 require 的使用時機,讓...

鐵人賽 Software Development DAY 5

技術 Day 5 - 寫出優雅的 Assertion: 使用 testing 套件與 stretchr/testify

昨日回顧與今日目標 在 Day 4,我們掌握了 Go 內建的測試工具,學會了 _test.go 的檔案結構和 go test 指令的實用flag,我們現在已經可...

鐵人賽 Software Development DAY 4

技術 Day 4 - Golang 的測試利器:go test 指令與 _test.go 檔案

昨日回顧與今日目標 在 Day 3,我們從「可測試性」的角度,掌握了 Go 語言的三大核心語法:函式、結構體與介面,我們理解到,良好的程式碼設計是 TDD 的基...

鐵人賽 Software Development DAY 3

技術 Day 3 - Golang 語法速成:打造「可測試」的函式、結構與介面

昨日回顧與今日目標 在昨天,我們已經成功 setup Golang 開發與測試環境,並透過一個簡單的 Hello, Test! 驗證了所有工具都已就緒,我們的...

鐵人賽 Software Development DAY 2

技術 Day 2 - 工欲善其事:搭建 Golang 開發與測試環境

昨日回顧與今日目標 在 Day 1,我們了解 TDD「紅燈-綠燈-重構」的核心思想,並建立起「TDD 是為了更快地交付高品質軟體」的正確心態。理論的種子已經播下...

鐵人賽 Software Development DAY 1

技術 Day 1 - 得知 TDD, 理解TDD, 使用TDD

安安,今年的鐵人賽,我想寫幾篇文章來說明TDD 這件事情,且用 TDD KATA 來入門 Golang 並在最後探索出如何和AI一起做TDD。 首先,如標題所示...

鐵人賽 DevOps
應該是 Profilling 吧? 系列 第 32

技術 D32 Building Operable Software with TDD (but not the way you think)

Building Operable Software with TDD (but not the way you think) - Martin Thwaite...

鐵人賽 Modern Web DAY 21

技術 Day21 — 穩如泰山 | 測試換個寫法試試看? AI 協助下的新寫法嘗試

前言 上一次我們測試的寫法,是先請 AI 幫我們大致產出來,修正測試項目,最後才做重構。發現這樣前前後後修改起來,也是蠻花時間的,而且需要花心思去額外比對,看測...