皇家方舟

          最新工作流程

          通過學(xué)習(xí)TDD以及三個月來楊博的多次言傳身教和他寫的一些文檔,得到了下面這一套工作流程: 1. 獲得任務(wù)。即項目經(jīng)理安排的任務(wù)。任務(wù)往往不止一項。將它們寫入周工作計劃表或者月工作計劃表。 2. 選擇任務(wù)。每天開始工作之前,將今天將要完成的任務(wù)寫入工作計劃列表。并選擇自己最有把握完成的任務(wù)作為當(dāng)前任務(wù)。 3. 分析并分解任務(wù)。將當(dāng)前任務(wù)分解成一個個相對簡單的問題,分解的問題最好是能在短時間之內(nèi)能完成,并將它們寫入工作列表。 4. 寫測試列表。選擇一個簡單的問題(此時可以為該方法取名了),并將所要完成的所有功能寫入工作列表。這就是方法注釋中的功能注釋。并且將每一項功能所對應(yīng)的單元測試記錄下來,寫入測試列表。 5. 選擇測試。從測試列表中選擇那個具有指導(dǎo)意義而且自己認(rèn)為最有把握實現(xiàn)的一項。如:一個數(shù)值對象類,也許對我來說,實現(xiàn)equals()方法是最有把握的,那我就可以選擇它作為我的當(dāng)前測試。 6. 編寫測試數(shù)據(jù)。寫一個容易讓人理解的必須實現(xiàn)的測試數(shù)據(jù)列表,盡量使用顯然數(shù)據(jù)。如:用 String 表示 IP 地址 "255.255.255.255" 轉(zhuǎn)換為 int ,在我們寫測試數(shù)據(jù)時應(yīng)這樣寫: (255 << 24) + (255 << 16) + (255 << 8) + 255 ,而不應(yīng)該寫成“ -1 ”。 7. 編寫測試。選擇一項最容易讓測試通過的測試數(shù)據(jù)加入測試方法。如:實現(xiàn)equals()方法中“比較兩個不是同類的對象返回false”的測試是最容易實現(xiàn)的,我就可以將它加入是最容易實現(xiàn)的,那就先實現(xiàn)它吧!斷言優(yōu)先,然后加入為了讓斷言通過編譯的一切準(zhǔn)備條件。 8. 運行測試,不可運行狀態(tài)。 9. 編寫功能代碼,使之達(dá)到可運行狀態(tài)。 10. 重構(gòu),消除重復(fù)設(shè)計。 11. 往測試方法中增加一個新的小測試。 12. 運行測試,不可運行狀態(tài)。 13. 修改功能代碼,使之達(dá)到可運行狀態(tài)。 14. 重構(gòu)。消除重復(fù)設(shè)計。 15. 重復(fù) 12-15 。 16. 當(dāng)無論如何也不能讓該測試通過的時候,認(rèn)真想一想是不是哪里出大問題了,如果實在想不出來的話,就將現(xiàn)有代碼扔掉,重新開始。 17. 所有測試都運行通過之后,仔細(xì)檢查所有代碼,看是否還有值得重構(gòu)的地方,并重構(gòu)。 18. 提交 (check in) 。 19. 再選擇測試列表中的下一個測試。重復(fù)以上步驟。 20. 當(dāng)要離開工作的時間比較久時,若有某個任務(wù)未完成,則留下一個不完整測試,以便于回到工作崗位時能迅速回憶起當(dāng)時寫該代碼時的想法,并接著寫下去。

          posted on 2006-12-09 16:40 阿輝 閱讀(298) 評論(1)  編輯  收藏 所屬分類: 學(xué)習(xí)日志

          Feedback

          # 寫測試列表(即分析方法的功能) 2006-12-09 16:50 阿輝

          方法的功能必須分析完備,重要的是需要將方法產(chǎn)生的異常進(jìn)行分析,判斷其是意外還是例外。如何將方法的功能分析完備呢?就需要尋找方法的所有激勵->響應(yīng)集合。并且每一個激勵->響應(yīng)組合至少應(yīng)有一個對應(yīng)的單元測試。因此寫測試列表就是把每一個激勵->響應(yīng)寫下來。  回復(fù)  更多評論   


          My Links

          Blog Stats

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 平远县| 樟树市| 泌阳县| 丹凤县| 凤山市| 德保县| 无为县| 墨江| 卓资县| 永川市| 泽州县| 临沂市| 新建县| 江陵县| 江津市| 胶州市| 京山县| 虎林市| 清新县| 西充县| 英德市| 德化县| 苏尼特左旗| 长乐市| 临城县| 道真| 宁远县| 新河县| 衡阳市| 盐池县| 商城县| 大名县| 灌南县| 贺州市| 娱乐| 定安县| 镇安县| 海原县| 琼中| 保定市| 肃宁县|