前言
一個網站的完成,從初期與客戶詢問需求、撰寫相關文件,到中期的版面設計及程式撰寫,到後期網站測試、驗收文件撰寫,最後專案結案及後續維護,是一個很長的生命週期。每個環節的執行是否完善,都深深影響到最後網站專案是否如期完成。所以軟體開發測試就占了很重要的角色,軟體開發測試簡單來分的話大概可以分為三種,單元測試、元件整合測試以及情境測試。單純就測試本身來說,每種測試都有不同的目的與效果,分層把關,以便讓程式的BUG發生率控制在最小的範圍內。因篇幅的關係我們今天就針對單元測試來做討論。
什麼是單元測試Unit Test
單元測試的單元,是程式中不可再分割的單元,通常是函數或類別的方法。最基本的進行方式是傳參數給函數/方法,然後檢查他的反應是否正確。其特別之處是在網站開始動工前執行的動作,也就是先行測試開發的概念。當整個網站程式尚未開始編寫前,先規劃出要測試的功能部份有哪些,如果都測試無誤才開始著手網站的程式編寫。或許有人會問,為何不等網站程式全部編寫完畢後再來作測試?其實單元測試就像是網站整體架構及流程的預覽動作,把要測的項目先釐清出來,如此之後再開始著手編寫程式時就不至於偏離網站需求太遠,這就是單元測試的魅力。
單元測試Unit Test的優點
- 熟悉單元測試技術,瞭解相關的基本原理。
- 降低新手進入項目的門檻,有助於積累信心。
- 幫助軟體開發人員編寫程式碼,提升質量、減少bug。
- 提升回饋速度,減少重複工作,提高開發效率。
- 保證你最後的程式碼修改不會破壞之前程式碼的功能。
- 讓程式碼維護更容易。
單元測試Unit Test的缺點
- 單元測試的學習成本比較高
- 編寫單元測試會增加軟體開發人員的工作量。
- 推廣和運用單元測試需要比較大的投入。
單元測試Unit Test週期
單元測試(Unit Test)的工具
看你的開發環境是用哪一套,這裡列出常見的程式語言單元測試工具給大家參考。
Java framework:JUnit
PHP framework:PHPUnit
C++ frameworks:UnitTest++ 與 Google C++
.NET framework:NUnit
Python framework:py.test
單元測試範例
總結
雖然單元測試也有一些缺點和負面的效應,但跟單元測試的優點比較起來,為了克服和解決這些缺點所在的付出是值得的。
網智數位-開發團隊一直突破開發技術、累積各種產業知識,而且在窗簾、窗材、拉門、布料業的商業管理軟體投入有特別的領域知識、也在圖控軟體(圖控軟件)、機械手臂、Android APP 、iPhone APP、3D列印 開發一直突破再創新,我們也堅持相信好的軟體可以協助企業,不管在管理營運角度、商品創新、決策分析等都絕對是不可缺少的關鍵因素,如果客戶您有任何軟體開發、程式開發委外需求,請聯繫我們讓我們協助您一起討論如何開發一個好的軟體來協助您。
針對各特殊產業都可以量身定做符合貴公司的需求,別人無法克服的就是我們的挑戰
業務合作、軟體委外開發
業務窗口:allen@netqna.com
聯繫電話:0920-883-870
公司電話:02-55991310
公司地址(業務營運處):台北市中山區錦州街 25 號 5 樓
skype: netqna
line:netqna
微信:netqna
黃先生 Allen
沒有留言:
張貼留言
如您對本文有任何建議或意見,歡迎您留下您寶貴的意見!