<ruby id="h6500"><table id="h6500"></table></ruby>
    1. <ruby id="h6500"><video id="h6500"></video></ruby>
          1. <progress id="h6500"><u id="h6500"><form id="h6500"></form></u></progress>
            • 軟件測試技術(shù)
            • 軟件測試博客
            • 軟件測試視頻
            • 開(kāi)源軟件測試技術(shù)
            • 軟件測試論壇
            • 軟件測試沙龍
            • 軟件測試資料下載
            • 軟件測試雜志
            • 軟件測試人才招聘
              暫時(shí)沒(méi)有公告

            字號: | 推薦給好友 上一篇 | 下一篇

            淺談測試驅動(dòng)開(kāi)發(fā)(TDD)

            發(fā)布: 2010-6-17 11:55 | 作者: 不詳 | 來(lái)源: 領(lǐng)測測試網(wǎng)采編 | 查看: 173次 | 進(jìn)入軟件測試論壇討論

            領(lǐng)測軟件測試網(wǎng)

              淺談測試驅動(dòng)開(kāi)發(fā)(TDD)  軟件測試

              測試驅動(dòng)開(kāi)發(fā)(TDD)是極限編程的重要特點(diǎn),它以不斷的測試推動(dòng)代碼的開(kāi)發(fā),既簡(jiǎn)化了代碼,又保證了軟件質(zhì)量。本文從開(kāi)發(fā)人員使用的角度,介紹了 TDD 優(yōu)勢、原理、過(guò)程、原則、測試技術(shù)、Tips 等方面。

              背景

              一個(gè)高效的軟件開(kāi)發(fā)過(guò)程對軟件開(kāi)發(fā)人員來(lái)說(shuō)是至關(guān)重要的,決定著(zhù)開(kāi)發(fā)是痛苦的掙扎,還是不斷進(jìn)步的喜悅。國人對軟件藍領(lǐng)的不屑,對繁瑣冗長(cháng)的傳統開(kāi)發(fā)過(guò)程的不耐,使大多數開(kāi)發(fā)人員無(wú)所適從。最近興起的一些軟件開(kāi)發(fā)過(guò)程相關(guān)的技術(shù),提供一些比較高效、實(shí)用的軟件過(guò)程開(kāi)發(fā)方法。其中比較基礎、關(guān)鍵的一個(gè)技術(shù)就是測試驅動(dòng)開(kāi)發(fā)(Test-Driven Development)。雖然TDD光大于極限編程,但測試驅動(dòng)開(kāi)發(fā)完全可以單獨應用。下面就從開(kāi)發(fā)人員使用的角度進(jìn)行介紹,使開(kāi)發(fā)人員用最少的代價(jià)盡快理解、掌握、應用這種技術(shù)。下面分優(yōu)勢,原理,過(guò)程,原則,測試技術(shù),Tips等方面進(jìn)行討論。

              1. 優(yōu)勢

              TDD的基本思路就是通過(guò)測試來(lái)推動(dòng)整個(gè)開(kāi)發(fā)的進(jìn)行。而測試驅動(dòng)開(kāi)發(fā)技術(shù)并不只是單純的測試工作。

              需求向來(lái)就是軟件開(kāi)發(fā)過(guò)程中感覺(jué)最不好明確描述、易變的東西。這里說(shuō)的需求不只是指用戶(hù)的需求,還包括對代碼的使用需求。很多開(kāi)發(fā)人員最害怕的就是后期還要修改某個(gè)類(lèi)或者函數的接口進(jìn)行修改或者擴展,為什么會(huì )發(fā)生這樣的事情就是因為這部分代碼的使用需求沒(méi)有很好的描述。測試驅動(dòng)開(kāi)發(fā)就是通過(guò)編寫(xiě)測試用例,先考慮代碼的使用需求(包括功能、過(guò)程、接口等),而且這個(gè)描述是無(wú)二義的,可執行驗證的。

              通過(guò)編寫(xiě)這部分代碼的測試用例,對其功能的分解、使用過(guò)程、接口都進(jìn)行了設計。而且這種從使用角度對代碼的設計通常更符合后期開(kāi)發(fā)的需求?蓽y試的要求,對代碼的內聚性的提高和復用都非常有益。因此測試驅動(dòng)開(kāi)發(fā)也是一種代碼設計的過(guò)程。

              開(kāi)發(fā)人員通常對編寫(xiě)文檔非常厭煩,但要使用、理解別人的代碼時(shí)通常又希望能有文檔進(jìn)行指導。而測試驅動(dòng)開(kāi)發(fā)過(guò)程中產(chǎn)生的測試用例代碼就是對代碼的最好的解釋。

              快樂(lè )工作的基礎就是對自己有信心,對自己的工作成果有信心。當前很多開(kāi)發(fā)人員卻經(jīng)常在擔心:“代碼是否正確?”“辛苦編寫(xiě)的代碼還有沒(méi)有嚴重bug?”“修改的新代碼對其他部分有沒(méi)有影響?”。這種擔心甚至導致某些代碼應該修改卻不敢修改的地步。測試驅動(dòng)開(kāi)發(fā)提供的測試集就可以作為你信心的來(lái)源。

              當然測試驅動(dòng)開(kāi)發(fā)最重要的功能還在于保障代碼的正確性,能夠迅速發(fā)現、定位bug。而迅速發(fā)現、定位bug是很多開(kāi)發(fā)人員的夢(mèng)想。針對關(guān)鍵代碼的測試集,以及不斷完善的測試用例,為迅速發(fā)現、定位bug提供了條件。

              我的一段功能非常復雜的代碼使用TDD開(kāi)發(fā)完成,真實(shí)環(huán)境應用中只發(fā)現幾個(gè)bug,而且很快被定位解決。您在應用后,也一定會(huì )為那種自信的開(kāi)發(fā)過(guò)程,功能不斷增加、完善的感覺(jué),迅速發(fā)現、定位bug的能力所感染,喜歡這個(gè)技術(shù)的。

              那么是什么樣的原理、方法提供上面說(shuō)的這些好處哪?下面我們就看看TDD的原理。

              2. 原理

              測試驅動(dòng)開(kāi)發(fā)的基本思想就是在開(kāi)發(fā)功能代碼之前,先編寫(xiě)測試代碼。也就是說(shuō)在明確要開(kāi)發(fā)某個(gè)功能后,首先思考如何對這個(gè)功能進(jìn)行測試,并完成測試代碼的編寫(xiě),然后編寫(xiě)相關(guān)的代碼滿(mǎn)足這些測試用例。然后循環(huán)進(jìn)行添加其他功能,直到完全部功能的開(kāi)發(fā)。

              我們這里把這個(gè)技術(shù)的應用領(lǐng)域從代碼編寫(xiě)擴展到整個(gè)開(kāi)發(fā)過(guò)程。應該對整個(gè)開(kāi)發(fā)過(guò)程的各個(gè)階段進(jìn)行測試驅動(dòng),首先思考如何對這個(gè)階段進(jìn)行測試、驗證、考核,并編寫(xiě)相關(guān)的測試文檔,然后開(kāi)始下一步工作,最后再驗證相關(guān)的工作。下圖是一個(gè)比較流行的測試模型:V測試模型。

              【圖 V測試模型】

              在開(kāi)發(fā)的各個(gè)階段,包括需求分析、概要設計、詳細設計、編碼過(guò)程中都應該考慮相對應的測試工作,完成相關(guān)的測試用例的設計、測試方案、測試計劃的編寫(xiě)。這里提到的開(kāi)發(fā)階段只是舉例,根據實(shí)際的開(kāi)發(fā)活動(dòng)進(jìn)行調整。相關(guān)的測試文檔也不一定是非常詳細復雜的文檔,或者什么形式,但應該養成測試驅動(dòng)的習慣。

            延伸閱讀

            文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/

            TAG: tdd TDD Tdd 開(kāi)發(fā) 驅動(dòng)

            41/41234>

            關(guān)于領(lǐng)測軟件測試網(wǎng) | 領(lǐng)測軟件測試網(wǎng)合作伙伴 | 廣告服務(wù) | 投稿指南 | 聯(lián)系我們 | 網(wǎng)站地圖 | 友情鏈接
            版權所有(C) 2003-2010 TestAge(領(lǐng)測軟件測試網(wǎng))|領(lǐng)測國際科技(北京)有限公司|軟件測試工程師培訓網(wǎng) All Rights Reserved
            北京市海淀區中關(guān)村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
            技術(shù)支持和業(yè)務(wù)聯(lián)系:info@testage.com.cn 電話(huà):010-51297073

            軟件測試 | 領(lǐng)測國際ISTQBISTQB官網(wǎng)TMMiTMMi認證國際軟件測試工程師認證領(lǐng)測軟件測試網(wǎng)

            老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
              <ruby id="h6500"><table id="h6500"></table></ruby>
              1. <ruby id="h6500"><video id="h6500"></video></ruby>
                    1. <progress id="h6500"><u id="h6500"><form id="h6500"></form></u></progress>