iT邦幫忙

2022 iThome 鐵人賽

DAY 20
0
Agile

敏捷路上觀察紀錄-那些好用的與歪掉的部分系列 第 20

[DAY 20]想想會考什麼-測試驅動開發(TDD)

  • 分享至 

  • xImage
  •  

什麼?你還沒看過本系列改寫出版的《Agile一本通!敏捷新手入門導引》?快來看看~
新書上架 >> https://www.books.com.tw/products/0010968755


「學生時代,你算是會讀書的那種人嗎?」

「不算吧,我其實很懶得看教材。我都會先看題目考什麼,再回頭去查觀念。」

「這也是一種方法欸,考試也算一種測試吧,先看測試要測什麼、希望達成什麼,再去建構概念。」

測試驅動開發(Test-Driven Development,TDD)

先寫測試再開發,不斷的在單元測試-最低程度開發以通過測試-重構之間循環

單元測試(Unit Testing)
單元測試為最小的測試單位,與其他測試案例無相依性,一次只包含一種測試方法。目的在驗證物件行為/功能符合需求

重構(Refactor)
當程式複雜度過高、具有大量相似程式碼、維護/修改不具彈性等狀況出現時,即需考慮重構。重構不代表整個系統「打掉重練」,可以由小處著手逐漸改善。重構完成後對於原先的結果必須沒有影響,仍可通過測試

TDD的好處

  1. 先想好功能需要滿足的條件再開發,包含該抓到哪些錯誤,目標明確
  2. 確保改動的範圍與狀況,可避免改A壞B

TDD的缺點

  1. 容易著眼於測試,而忽略實際需求
  2. 介面的操作較難以TDD達成
  3. 專案開發時間較長

今天的參考資料/延伸閱讀:

  1. [筆記] TDD/BDD and Test Double
  2. TDD 開發五步驟,帶你實戰 Test-Driven Development 範例
  3. 測試驅動開發
  4. TDD (Test-Driven Development) 測試驅動開發(入門篇)
  5. TDD(Test-Driven Development,測試驅動開發)的幾個想法
  6. [30天快速上手TDD][Day 2]Unit Testing 簡介
  7. [30天快速上手TDD][Day 9]Refactoring legacy code 簡介

上一篇
[DAY 19]相互了解與合作-領域驅動開發(DDD)
下一篇
[DAY 21]酒保何以從容以對?-行為驅動開發(BDD)
系列文
敏捷路上觀察紀錄-那些好用的與歪掉的部分30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言