敏捷開發中的測試

agile_boy發表於2008-07-24
  測試驅動開發(TDD)是類似極限程式設計(XP)這樣的敏捷方法的核心實踐,其對自動化測試的使用更多的是去編制軟體行為的規格而不只是衰退測試。TDD的效能來自於讓我們去單獨的思考軟體為兩個階段:它必須做什麼,它必須如何去做。
  
  敏捷軟體開發在避開瀑布風格的開發嗎?確實如此,敏捷人員喜歡按特性一個一個的設計和建立系統,每一步都可以獲得工作軟體來證實在開發下一個特性之前每個特性是可以工作的。這並不意味著我們不要去設計了,這簡單的意味著我們去“連續的設計”。極端情況就是“緊急設計”,此時在最前面做很小的設計。基於一步一步的特性,我們可以在詳細設計的最前面結合高階設計(架構)。這樣可以延遲對去實現某個特性的行為的思考,我們可以去捕獲行為必須是怎麼樣的一種可執行的規格的方式。不管怎麼說,我們多數人很難在某個時間只集中在一件事情上面。
  
  一旦我們完成編寫測試並證實它們像期待的一樣失敗了,這樣我們可以轉換看法讓它們通過,現在測試是一種前進的度量。如果我們增量實現功能,隨著我們編碼的增加,我們可以看到一個一個的通過測試。隨著我們工作的進行,我們繼續執行先前編寫的測試作為衰減測試,來確保我們的變更沒有帶來意外的側面影響。這是自動化單元測試的真正價值:功能性不會意外的變更。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14639675/viewspace-408752/,如需轉載,請註明出處,否則將追究法律責任。

相關文章