本書的第一部分主要介紹了TDD相關背景知識(TDD、Refactoring、Programing by Intention)
這部分就讓我們探討一下可供測試驅動開發使用的工具,主要是junit以及它的一些擴展.
1.JUnit
JUnit框架圖.
2.建議
(1) 一些插件能夠自動為特定的類生成TestCase,并為目標類中的每個方法創建一個測試,這種關聯測試的做法是錯誤的,
你應當為行為而不是方法編寫測試.
(2) 先測試簡單的東西,主要包括:
a. 正確處理null
b. 空集或null對象的行為
c. 遞歸或迭代計算的基本情況
(3) 測試的方法也應該簡短,避免bad smell
(4) 盡早測試邊界條件
(5) 保持測試間的相對獨立,一個測試的失敗不應該導致其他測試的失敗.
(6) 使用細化的接口,接口應該是目標專一的,過多內容的接口就是一種smell,接口包含的聲明不超過三個就非常好.
(7) 避免在測試中使用System.out或者System.err,測試應當是在程序斷言的幫助下自動運行的.