[30天快速上手TDD]序章

[30天快速上手TDD]序章

前言

筆者的朋友們應該都很清楚,每年iT邦幫忙的年度鐵人大賽,筆者都會哀哀叫的哀一個月。(我們都戲稱為自刁時間,自我虐待一個月)

其實每一年參加這個活動,都是為了把自己的潛力逼出來,好好審視一年過去了,筆者可以端出什麼樣的菜,來給大家品嚐一下。

去年的修煉系列是:「如何提升系統設計品質 - 技術與工具以.NET為例」,也很好運的獲得了第二名鐵人優選獎的榮譽。(雖然…iT邦幫忙的介面,真的很不適合寫系列文,畢竟它是比較屬於問答論壇性質的)

今年雖然臨時卡了很多緊急的任務,但還是不想缺席,還是想給自己一個交代。所以好好思考了一下自己還有什麼東西可以掏出來,跟之前的文章或鐵人賽的修煉文,既不會重疊的太多,又可以承接起來發揮綜效。

原本想的主題是LINQ系列(沒錯,就是在我 blog 上延宕很久的系列文),後來覺得 LINQ 的系列文,可能太 focus 在 .NET solution,iT邦幫忙的讀者群可能是各種領域的 IT 人員與開發人員。

所以就發了個宏願(對我來說,真的是個宏願),希望可以用30天,一天一篇文章,把自己對 TDD 的一些心得與心路歷程分享出來,希望可以讓大家對所謂的 Scrum, 測試, TDD 一些不好的刻板印象有所改善,那不再是個烏托邦的世界,只要把您的拼圖拼的夠完整,你就可以在新世界中生存!

本系列文的目的,就是希望每一個 developer 可以把每一塊拼圖 pick up起來,接著把每一塊拼圖拼起來,快樂地進行 TDD。

 

鐵人大賽連載

主旨:30 天快速上手 TDD

透過 30 天,一天一篇文章,讓大家可以感同身受,TDD 不再只是書上的夢想,烏托邦的世界。 只要有心,人人都可以快快樂樂TDD。(文章將以C#為例)

網址:http://ithelp.ithome.com.tw/ironman5/player/hatelove/tech/3

 

系列大綱

本系列的進行方式,是先按照學習的順序,介紹每一塊拼圖的內容、來龍去脈、實務上的技巧與工具。

當每一塊拼圖都介紹完畢,最後再透過一個簡單又很常見的實際例子,從頭到尾的把整個軟體開發流程的循環帶過一次,讓大家可以實際練習或體驗到,每一塊拼圖承上啟下的美妙之處。

大綱如下:

  1. 簡介每一塊拼圖的學習順序與實作順序
  2. 介紹 Unit Testing、Integration Testing、UI Testing。
  3. 介紹 Refactoring。
  4. 介紹 User Story 與 Acceptance Testing。
  5. 介紹 BDD。
  6. 實戰演練:從 User Story 到 Acceptance Test Cases,從Acceptance Test Cases 到 BDD 的 Feature 與 Scenario,從 BDD 的 Scenario 到 Integration Testing 與 Unit Testing 的 3A principle,從 Unit Test Cases 到實作物件內容,實作完物件內容後開始進行重構。

 

備註

有一些文章是取自今年的 blog 文章內容,因為當時在寫的時候,就是多少為了鐵人賽鋪路了。但內容通常會再與整系列文章相整合,所以會補充不少原本文章沒有的東西,就請各位讀者多包涵,也希望額外補充的內容可以讓大家更有收穫、更有感覺。

另外,去年的鐵人大賽系列文,因為蠻多圖是用點部落上的圖片連結,但後來點部落擋掉外部圖片連結了,所以請各位讀者自行參考筆者 blog 上對應的文章,如有不便,敬請見諒。

 

本系列文最重要的精神

這個系列最重要的精神,筆者希望在序章中,就強調出來:

「程式碼存在的目的,只是為了滿足使用者的需求,進而對使用者產生 benefit,絕不是寫給 developer 自爽用的」。

 

 


blog 與課程更新內容,請前往新站位置:http://tdd.best/