TDD基本概念

2021-08-15 03:53:54 字數 935 閱讀 6605

理解tdd:要求你先編寫測試,再編寫實現**

紅燈—綠燈—重構

編寫乙個測試; 

執行所有測試; (不能通過:紅燈)

編寫實現**;

執行所有測試; (能通過:綠燈)

重構;執行所有測試。 (如果重構期間有測試未通過,就說明重構破壞了既有功能,應像以前一樣撤銷所做的修改)

tdd並非測試方法 :

測試驅動開發是一種設計方法,要求在編寫**前考慮實現以及**需要提供的功能,且每次只關注一項功能的需求和實現——這有助於理清思路以及更好地組織**。

讓我們能夠以極快的速度進行開發,同時不擔心破壞既有功能

主要目標是提供可測試的**設計

黑盒測試

主要缺點:覆蓋率有限、測試效率低下、測試缺乏針對性。

主要優點:將使用者角度和開發人員角度分離。 

自動化黑盒測試依賴於某種形式的自動化,如行為驅動開發(bdd)。

白盒測試 

主要缺點:可能無法發現未實現或缺失的功能、測試通常與產品**的實現細節緊密耦合,導致重構**後原本應該通過的測試未能

通過。 

主要優點:最大限度地提高測試覆蓋率。

在實現前執行的白盒測試是以tdd方式編寫的。 

質量檢查和質量保證的差別

質量檢查的重點是發現缺陷、面向產品。

質量保證力圖將缺陷消滅在萌芽狀態、專注於過程。

模擬 通過模擬外部依賴,可大幅提高速度。

可執行的文件

要搞清楚**是幹什麼的,在大多數情況下通過檢視測試比檢視實現本身要容易得多。

實現**提供了所需的所有細節,而測試**描述了產品**背後的意圖。

bdd可在保留tdd和自動化的優點的同時,提供非程式設計師所需的文件。

在底層,單元測試是最佳的可執行文件;

而在功能層面,bdd是提供可執行文件的不錯方式,它使用自然語言,確保了這種文件易於理解。 

基本概念 C 基本概念

由於工作中需要用到c 編寫的一些工具,有時候需要根據需求修改或者定製工具,所以現在不得不學習一下c 的基礎語法,此為筆記,不成章法!機器語言 組合語言 高階語言 面向過程的程式設計方法 物件導向的程式設計方法 泛型程式設計方法 1 演算法設計 2 源程式編輯 3 編譯 4 連線 5 執行除錯 輸入裝...

基本概念 數控系統基本概念

第一章 基本概念 數控工具機cnc是一種按事先編制好的加工零件程式進行加工的高效 自動化加工裝置。是 computer numerical control machine tools 的簡稱。數控工具機較好地解決了複雜 精密 小批量 多品種的零件加工問題,是一種柔性的 高效能的自動化工具機。西門子系...

XSLT基本概念

我們首先來澄清乙個概念,大家可能聽說過xsl extensible stylesheet language xsl和我們這裡說的xslt從狹義上理解是一樣的,而按照w3c的標準,xslt的說法更嚴格些,因此我們在文章中統一使用xslt的稱法。它們之間具體的關係我們會在下面講述。1.1 什麼是xslt...