qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問 http://qaseven.github.io/

          測(cè)試驅(qū)動(dòng)開發(fā) Test-driven development

           測(cè)試驅(qū)動(dòng)開發(fā)(Test-driven development)是極限編程中倡導(dǎo)的程序開發(fā)方法,以其倡導(dǎo)先寫測(cè)試程序,然后編碼實(shí)現(xiàn)其功能得名。
            正面評(píng)價(jià)
            可以有效的避免過度設(shè)計(jì)帶來的浪費(fèi)。但是也有人強(qiáng)調(diào)在開發(fā)前需要有完整的設(shè)計(jì)再實(shí)施可以有效的避免重構(gòu)帶來的浪費(fèi)。
            可以讓開發(fā)者在開發(fā)中擁有更全面的視角。
            負(fù)面評(píng)價(jià)
            開發(fā)者可能只完成滿足了測(cè)試的代碼,而忽略了對(duì)實(shí)際需求的實(shí)現(xiàn)。有實(shí)踐者認(rèn)為用結(jié)對(duì)編程的方式可以有效的避免這個(gè)問題。
            會(huì)放慢開發(fā)實(shí)際代碼的速度,特別對(duì)于要求開發(fā)速度的原型開發(fā)造成不利。這里需要考慮開發(fā)速度需要包含功能和品質(zhì)兩個(gè)方面,單純的代碼速度可能不能完全代表開發(fā)速度。
            對(duì)于GUI,資料庫(kù)和Web應(yīng)用而言。構(gòu)造單元測(cè)試比較困難,如果強(qiáng)行構(gòu)造單元測(cè)試,反而給維護(hù)帶來額外的工作量。有開發(fā)者認(rèn)為這個(gè)是由于設(shè)計(jì)方法,而不是開發(fā)方法造成的困難。
            使得開發(fā)更為關(guān)注用例和測(cè)試案例,而不是設(shè)計(jì)本身。目前,對(duì)于這個(gè)觀點(diǎn)有較多的爭(zhēng)議。
            測(cè)試驅(qū)動(dòng)開發(fā)會(huì)導(dǎo)致單元測(cè)試的覆蓋度不夠,比如可能缺乏邊界測(cè)試。在實(shí)際的操作中,和非測(cè)試驅(qū)動(dòng)開發(fā)一樣,當(dāng)代碼完成以后還是需要補(bǔ)充單元測(cè)試,提高測(cè)試的覆蓋度。
            測(cè)試驅(qū)動(dòng)開發(fā) - 開發(fā)過程
            概括起來,測(cè)試驅(qū)動(dòng)開發(fā)的基本過程如下:
            (1) 明確當(dāng)前要完成的功能。可以記錄成一個(gè) TODO 列表。
            (2) 快速完成針對(duì)此功能的測(cè)試用例編寫。
            (3) 測(cè)試代碼編譯不通過。
            (4) 編寫對(duì)應(yīng)的功能代碼。
            (5) 測(cè)試通過。
            (6) 對(duì)代碼進(jìn)行重構(gòu),并保證測(cè)試通過。
            (7) 循環(huán)完成所有功能的開發(fā)。

          posted on 2014-03-24 10:51 順其自然EVO 閱讀(291) 評(píng)論(0)  編輯  收藏 所屬分類: 測(cè)試學(xué)習(xí)專欄

          <2014年3月>
          2324252627281
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 广宁县| 盘山县| 高州市| 嘉峪关市| 马关县| 南靖县| 兰州市| 迁西县| 尉氏县| 龙山县| 井研县| 云林县| 沙田区| 巍山| 广河县| 油尖旺区| 新郑市| 郑州市| 黄浦区| 阜康市| 枝江市| 吉林市| 潼关县| 监利县| 泗洪县| 中超| 昭通市| 广平县| 湖南省| 娱乐| 常熟市| 卫辉市| 水城县| 鲜城| 营口市| 灌南县| 集贤县| 丰镇市| 安庆市| 普兰店市| 介休市|