不增加人力投入,不改變開發流程,不延長專案時間,不提高管理成本,如果要較大幅度地提高軟體產品的質量、降低開發測試及後期維護的成本,那麼,單元測試可能是最好的選擇。
簡單地說,單元測試的效益主要表現在:
1、保證區域性**的質量。單元測試在隔離的前提下,分別對各個**單元進行測試,能夠達到其他測試不可能達到的測試完整性,從而保證了區域性**的質量。只有區域性**的質量得到了保證,**的整體質量才可能得到保證。
2、保證**的整體結構良好。要對**進行單元測試,最起碼的前提是**能夠隔離,也就是說,要具有一定的可測性,因此,單元測試是一種有效的約束機制,這種機制將保證**具有良好的整體結構。例如,如果把業務**直接寫在介面類中,將很難進行單元測試,隨意的不合理的緊耦合也會造成難於測試,單元測試使這些不好的特性得於及時發現,從而很容易進行修正。可以說,可測性是高質量**的最重要的特性,不具有可測性,也就無法衡量**的正確性,而有了可測性,也就在一定程度上保證了**的可擴充套件性、可復用性。
3、單元測試使排除**錯誤的成本最小化。排除錯誤的代價隨著時間的推移呈指數級數上公升,並且,有很多細小的**錯誤只有通過單元測試的手段才能發現。
4、單元測試大幅度降低了後期測試和公升級維護的時間成本。如果**經過了充分的單元測試,整合測試和系統測試就只需要關注設計方面的問題。自動回歸測試也大量降低公升級維護成本。
5、單元測試自然地使開發流程變得「敏捷」,可以適應頻繁變動的需求,因為整體結構良好的**具有較好的可擴充套件性,自動回歸測試又能保證修改不會引入新的錯誤。
對程式設計師來說,單元測試也有利於養成編寫區域性**時的縝密的思維習慣,以及提高設計能力。
本文所說的方法和技術,具有「簡單實用」的特徵,對於企業來說,不需要增加額外的人員就可以實施,對於某乙個專案來說,不需改變原來的開發流程來適應單元測試,反過來,單元測試會自然促進開發流程的改進;對於開發人員,也沒有特殊的要求,反過來,單元測試會促進開發人員進一步提高開發能力。
單元測試 單元測試文章收藏
前言 前段時間公司計畫做自動化測試,自己也打算圍繞幾個點做相關調研,現在想想呢?其實對自動化測試的概念都還不是十分清晰,當時主要還是圍繞 單元測試 向qa小夥伴學習了一段時間,現由於公司重組,學習中斷,這裡簡單記錄一些單元測試好文,留待後續參考.什麼叫自動化測試?自動化測試覆蓋率?覆蓋率如何做到的?...
單元測試之Django單元測試
每個應用,自帶tests.py 整合在django的專案檔案裡,更多是開發人員寫django自動的測試執行 3.1 前後置方法執行特點 django.test.testcase類主要由前 後置處理方法和test開頭的方法組成 特點 繼承於django.test.testcase 測試用例都是test...
單元測試 單元測試編寫的原則
公司要求提公升單元測試的質量,其中我作為方案和推動的主導,對開發過程中的單元測試,有了一些思考和總結 單元測試編寫的目的,是面向計算機特性的,基於函式的in out,所以單元測試的好幫手就是斷言,通過不斷的構造輸出並對結果進行斷言,我們就可以針對乙個物件以及它的函式,構建出充足的用例去包裹它,以期望...