<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>

            什么是測試驅動(dòng)開(kāi)發(fā)及其重要性

            發(fā)表于:2020-03-26來(lái)源:未知作者:麥葉點(diǎn)擊數: 標簽:測試驅動(dòng)開(kāi)發(fā)
            測試是任何軟件開(kāi)發(fā)項目中最重要的步驟之一。 如果跳過(guò)此過(guò)程,則結果可能是災難性的-對項目和公司而言。 但是什么時(shí)候應該對軟件進(jìn)行測試? 在項目完成后進(jìn)行測試似乎是合乎邏

            測試是任何軟件開(kāi)發(fā)項目中最重要的步驟之一。 如果跳過(guò)此過(guò)程,則結果可能是災難性的-對項目和公司而言。 但是什么時(shí)候應該對軟件進(jìn)行測試? 在項目完成后進(jìn)行測試似乎是合乎邏輯的。 但是,經(jīng)典測試過(guò)程的功能是有限的。 如果您先編寫(xiě)代碼,然后再測試實(shí)現,則可能會(huì )遇到一些問(wèn)題,即過(guò)度研發(fā),設計偏離,可測試性問(wèn)題。 幸運的是,有一種方法可以應對這些挑戰,它被稱(chēng)為–測試驅動(dòng)開(kāi)發(fā)。

            什么是TDD或測試驅動(dòng)開(kāi)發(fā)?

            TDD是測試驅動(dòng)開(kāi)發(fā)的縮寫(xiě),它指的是設計范例,其中軟件組件測試用于指導整個(gè)開(kāi)發(fā)過(guò)程。 要了解TDD的工作原理,首先,最好定義其重要概念之一-單元測試。

            什么是軟件單元測試?

            單元測試 是一種將代碼分解成小的獨立單元的方法。 單元測試的主要目的是獨立評估每個(gè)組件的行為,以驗證它們是否正常運行。 單元測試通常由開(kāi)發(fā)人員執行,但也可以由質(zhì)量經(jīng)理執行。 一些軟件開(kāi)發(fā)人員認為單元測試是浪費時(shí)間,但是實(shí)踐表明情況恰恰相反。 

            系統測試, 集成測試 和Beta測試階段, 忽略單元測試會(huì )導致更高的錯誤修復成本 。 同時(shí),單元測試允許在開(kāi)發(fā)生命周期的早期階段檢測錯誤和錯誤,從而在將來(lái)節省您的時(shí)間和金錢(qián)。

            什么是TDD? 

            測試驅動(dòng)開(kāi)發(fā)是一種軟件開(kāi)發(fā)技術(shù),其中單元測試是最重要的問(wèn)題。 簡(jiǎn)而言之,測試驅動(dòng)的開(kāi)發(fā)都與“測試優(yōu)先”方法有關(guān),這意味著(zhù)測試是在代碼實(shí)現之前編寫(xiě)的。 無(wú)論是談?wù)損ython中的測試驅動(dòng)開(kāi)發(fā)還是java中的測試驅動(dòng)開(kāi)發(fā),TDD編程實(shí)踐始終旨在編寫(xiě)有效的干凈代碼。

            我們可以將TDD視為一種設計策略。 因為測試是首先編寫(xiě)的,所以要測試的組件的接口在存在之前已經(jīng)被使用。 因此,開(kāi)發(fā)人員應盡快獲得有關(guān)設計可用性的反饋。

            TDD的三個(gè)原則:

            1. 除非要通過(guò)失敗的單元測試,否則不允許編寫(xiě)任何生產(chǎn)代碼。
            2. 您不能編寫(xiě)超出失敗所需的單元測試。 只需要實(shí)現最少的代碼,就可以完成單元測試。
            3. TDD的過(guò)程通常被描述為一個(gè)紅綠色重構周期-該周期對每個(gè)書(shū)面單元測試執行一次。 

            每個(gè)階段是什么意思?

            在TDD中,在實(shí)現實(shí)際功能之前就編寫(xiě)了功能的單元測試。 由于缺少功能,因此測試失敗。 由于錯誤通常在IDE中標記為紅色,因此測試驅動(dòng)開(kāi)發(fā)的這一階段稱(chēng)為“紅色”。

            在第二階段,開(kāi)發(fā)人員編寫(xiě)足以使測試通過(guò)的代碼。 由于綠色表示成功,因此該階段稱(chēng)為“綠色”。 綠階段不需要優(yōu)化。 下一個(gè)任務(wù)是重構代碼。 重構階段的主要思想是使代碼更好,尤其是消除代碼重復。 重復這些階段,直到修復了錯誤,代碼具有所需的功能并且沒(méi)有測試失敗為止。 

            測試驅動(dòng)開(kāi)發(fā)的好處

            TDD似乎很難遵循,但是您付出的額外努力將為您的項目帶來(lái)很多好處。 有關(guān)TDD影響 的研究 表明,這種做法有助于將軟件缺陷減少40%到60%。 對于想要將更好的產(chǎn)品推向市場(chǎng)的企業(yè)主來(lái)說(shuō),TDD的一大優(yōu)勢是 質(zhì)量保證 ,可以在持續的過(guò)程中得到保證。

            顯然,通過(guò)從代碼的第一行進(jìn)行連續測試,錯誤和意外事件的發(fā)生可能性較小。 在質(zhì)量方面,進(jìn)一步的優(yōu)勢包括更多的深思熟慮的代碼以及無(wú)需運行整個(gè)程序即可測試某些功能的能力,這對于大型項目而言非常重要。

            您發(fā)現錯誤的時(shí)間越晚,錯誤將給您帶來(lái)更多的損失。 最重要的是,TDD是一個(gè)很好的機會(huì ),可以快速檢測到錯誤和崩潰并立即解決問(wèn)題。 如果以后發(fā)現錯誤,則可以減少繁瑣調試的后續成本。 此外,TDD有助于降低支持和缺陷管理領(lǐng)域的成本。 專(zhuān)家強調,TDD提供了絕佳的機會(huì )來(lái)縮短學(xué)習代碼行為所需的時(shí)間和成本。 使用TDD時(shí),您還可以指望減少計劃外成本。

            如果您在開(kāi)發(fā)期間不使用測試,則最終用戶(hù)可能是第一個(gè)面臨軟件缺陷的用戶(hù)。 因此,除了修復錯誤的成本外,您還可能失去客戶(hù)的信任。 另一方面,TDD使您可以避免這些問(wèn)題。 測試驅動(dòng)的開(kāi)發(fā)還有助于優(yōu)化開(kāi)發(fā)人員的工作。 如果出現問(wèn)題,程序員會(huì )立即知道出了點(diǎn)問(wèn)題,因為應用程序沒(méi)有通過(guò)測試。 這使開(kāi)發(fā)人員可以專(zhuān)注于代碼的特定部分,而不必考慮整個(gè)系統的后果。

            TDD也可以用作改進(jìn)紙質(zhì)文檔的工具。 對于程序員來(lái)說(shuō),書(shū)面測試比數百頁(yè)的需求更有意義。 可以說(shuō),測試充當了客戶(hù)愿景與程序員必須做的事情之間的溝通橋梁。 

            最后的想法

            使用TDD方法有很多優(yōu)點(diǎn),從有機會(huì )盡早解決bug到不太明顯的bug,例如有機會(huì )確??蛻?hù)長(cháng)期滿(mǎn)意。 即使不應將TDD視為旨在解決任何開(kāi)發(fā)問(wèn)題的靈丹妙藥,但如果要節省資源并優(yōu)化軟件項目的工作流程,則應考慮使用此選項。

            原文轉自:https://www.maiyewang.com/archives/86325

            老湿亚洲永久精品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>