<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    love fish大鵬一曰同風起,扶搖直上九萬里

    常用鏈接

    統計

    積分與排名

    friends

    link

    最新評論

    讀 TDD 的總結

    TDD 的總結

    				
    						讀完TDD(測試驅動開發),發現其中主要就是在反復說了這么兩件事情(也就是兩個簡單的規則):一、在寫任何代碼之前,寫一個會失敗的自動測試程序,即單元測試;二、消除重復設計,優化設計結構,即重構。整本書都圍繞著這兩個規則來進行說明,告訴讀者到底要如何這樣做?又如何分階段應用這些規則?這兩條簡單的規則可以運用多深?
    				
    		
    				
    						第一部分通過一個簡單的實例來告訴讀者如何使用TDD,如何反復通過不可運行/可運行/重構/不可運行/可運行/重構來進行開發;第二部分告訴讀者如何使用單元測試,怎樣組織單元測試;第三部分則是將TDD分解成較小的步驟來進行詳細說明,根據我對本書的理解,我認為需要完全將TDD運用到日常的開發行為中,則要按照以下非常細小的步驟進行:
    				
    		

    1.?????? 獲得任務。即項目經理安排的任務。任務往往不止一項。將它們寫入周工作計劃表或者月工作計劃表。

    2.?????? 選擇任務。每天開始工作之前,將今天將要解決的問題寫入工作計劃列表。并選擇自己最有把握完成的任務作為當前任務。

    3.?????? 分析并分解任務。將當前任務分解成一個個相對簡單的問題,分解的問題最好是能在十多分鐘之內能完成,并將它們寫入工作列表。如:若要實現多幣種相加,則可以分解為:實現相同幣種之間的相加,不同幣種之間的互換,最后才能實現不同幣種之間的相加。

    4.?????? 寫測試列表。將分解后的問題所對應的測試寫入測試列表。

    5.?????? 選擇測試。從測試列表中選擇自己認為最有把握實現的一項。如:“同幣種相加”對我來說是最有把握實現的一項,因此我最先來實現它,即先從它的測試程序開始編寫。

    6.?????? 編寫測試數據。寫一個容易讓人理解的必須實現的測試數據列表,盡量使用顯然數據。如:用 String 表示 IP 地址 "255.255.255.255" 轉換為 int ,在我們寫測試數據時應這樣寫: (255 << 24) + (255 << 16) + (255 << 8) + 255 ,而不是寫“ -1 ”。

    7.?????? 編寫測試。選擇一項最容易讓測試通過的測試數據加入測試方法。斷言優先,然后加入為了讓斷言通過編譯的一切準備條件。

    8.?????? 運行測試,不可運行狀態。

    9.?????? 編寫方法注釋,把所有想到的該方法要實現的功能寫上。

    10.?? 編寫功能代碼,使之達到可運行狀態。

    11.?? 重構,消除重復設計。

    12.?? 往測試方法中增加一個新的小測試。

    13.?? 運行測試,不可運行狀態。

    14.?? 修改功能代碼,使之達到可運行狀態。

    15.?? 重構。消除重復設計。

    16.?? 重復 12-15

    17.?? 當無論如何也不能讓該測試通過的時候,認真想一想是不是哪里出大問題了,如果實在想不出來的話,就將現有代碼扔掉,重新開始。

    18.?? 所有測試都運行通過之后,仔細檢查所有代碼,看是否還有值得重構的地方,并重構。

    19.?? 提交 (check in)

    20.?? 再選擇測試列表中的下一個測試。重復以上步驟。

    21.?? 當一天的工作結束時,若有某個任務未完成,則留下一個不完整測試,以便于次日能迅速回憶起當時寫該代碼時的想法,并接著寫下去。

    posted on 2007-01-18 15:54 liaojiyong 閱讀(351) 評論(0)  編輯  收藏 所屬分類: Testing

    主站蜘蛛池模板: 免费国产高清视频| 最近中文字幕mv免费高清电影 | 中文字幕乱码一区二区免费| 久久受www免费人成_看片中文| 亚洲午夜久久久久久噜噜噜| 亚洲v高清理论电影| 亚洲不卡在线观看| 大桥未久亚洲无av码在线| 日韩中文字幕精品免费一区| 亚洲国产超清无码专区| 国国内清清草原免费视频99| 亚洲xxxxxx| 精品国产免费一区二区| 久久国产成人亚洲精品影院| 久久久久久久久久久免费精品| 亚洲Av无码乱码在线znlu| 亚洲午夜精品在线| 手机永久免费的AV在线电影网| 亚洲国产精品成人一区| 中文永久免费观看网站| 亚洲国产精品第一区二区| 美女视频黄频a免费| 久久精品亚洲男人的天堂| 伊人久久大香线蕉免费视频| 国产国产成年年人免费看片| 黄色毛片免费观看| 亚洲精品亚洲人成人网| 99久热只有精品视频免费看| 亚洲伊人久久大香线蕉在观| 啦啦啦手机完整免费高清观看| 水蜜桃视频在线观看免费| 久久久高清免费视频 | 无码国产精品一区二区免费式直播| ww亚洲ww在线观看国产| 夜色阁亚洲一区二区三区| av网站免费线看| 亚洲欧洲在线播放| 亚洲国产一级在线观看| 亚欧免费无码aⅴ在线观看| 亚洲伊人久久精品影院| 国产成人福利免费视频|