2022-03-10 14:10:22|已瀏覽:4480次
客觀來說,軟件測試培訓(xùn)中單元測試和使用版本控制系統(tǒng)(GIT,SVN)是一樣重要的。
為什么軟件測試培訓(xùn)單元測試如此重要,但你卻感受不到。首先要知道,代碼的終極目標有兩個,第一個是實現(xiàn)需求,第二個是提高代碼質(zhì)量和可維護性。01、Hello Word
任何一個偉大的程序員都是從最簡單的代碼開始寫起的,假設(shè)你的第一個程序是Hello World,任何一個語言實現(xiàn)這個程序都只需要不到5行代碼。這個程序需要單元測試嗎?我們看看這個程序是否實現(xiàn)了軟件的兩個目標:
1.需求很簡單,輸出Hello World,這個程序完全滿足需求。
2.只有5行代碼的“軟件”無論是代碼質(zhì)量,還是可維護性,都相當高,你想要把Hello改成Hi真的很輕松。
既然我們已經(jīng)實現(xiàn)了代碼的目標,要不要使用單元測試是無所謂的,同樣這么簡單的代碼也沒人會使用GIT或SVN。
代碼量:5行
02、立簡單計算器
接下來你寫了一個相對更復(fù)雜的程序,一個簡單計算器。這個程序?qū)崿F(xiàn)了數(shù)字的加減乘除,整個程序共寫了大概50行代碼。這個程序需要單元測試嗎?
1.需求是對數(shù)字進行加減乘除,這個程序滿足了需求。
2.你的代碼風(fēng)格很好(你已經(jīng)了解到代碼風(fēng)格很重要),你使用了縮進,良好的變量命名,邏輯也清晰,代碼的質(zhì)量和可維護性仍然相當高,如果你想增加一個“求x的平方”功能,你輕而易舉就可以做到。
這個時候讓你去寫單元測試,你仍然會覺得那純粹是浪費時間。
代碼量:50行
03、圖書管理系統(tǒng)
你想要做一個真正的實用系統(tǒng),給學(xué)校開發(fā)一個圖書管理系統(tǒng)。 你相信這個系統(tǒng)的代碼量比起計算器會很多(可能會有1000行)。你從書上看到有這樣一些方法可以簡化你的開發(fā)工作:你最終很好的實現(xiàn)了這個系統(tǒng),基于MVC模型,你的代碼被很好的分割成了很多小的獨立的模塊:4個Controller,2個Model,4個View。并且在工具庫的幫助下,代碼量得到了縮減,每個模塊大概只有50行代碼(等同于一個簡單計算器的代碼量)。這個系統(tǒng)需要單元測試嗎?
1.你實現(xiàn)了對圖書的添加、刪除、修改、借閱,你很好的滿足了需求。
2.得益于框架與庫的使用,你的代碼被很好的模塊化了,每個模塊都像一個“簡單計算器”那樣簡單,增加新功能,或修改現(xiàn)有功能似乎也沒有什么大麻煩,雖然會出現(xiàn)一些小bug,但很快就修復(fù)了,代碼質(zhì)量和可維護性都比較高。既然你又實現(xiàn)了代碼的目標——“完成需求,高代碼質(zhì)量和可維護性”,那好像也沒“單元測試”什么事,畢竟寫它要浪費額外的功夫,而且也沒感覺到有多少好處。
代碼量:500行
04、大型庫存管理系統(tǒng)
你被一家IT公司雇傭了,你通過了面試,進入了一個即將開啟的項目——為一家大的電商公司做一個庫存管理系統(tǒng)。05、結(jié)論
雖然,從絕對的角度說,單元測試很重要,但是,從相對的角度來講,小的代碼量,簡單固定的需求,個人開發(fā),一錘子買賣等等都會讓單元測試顯得不那么重要,并且你一直開發(fā)的很舒服,這就是為什么有的人感受不到單元測試的重要性(這種情況下的確也許不用寫單元測試)。如果你現(xiàn)在在做一個較大的項目,這個項目的需求很多,所以你一直在開發(fā),你遇到了這樣的痛苦狀況:
1.客戶總能在使用中找出BUG;
2.每次代碼的改動,都會導(dǎo)致一些意想不到的BUG出現(xiàn)。這個時候,單元測試可以挽救你。
注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://m.dedgn.cn/news-id-24765.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實性請自行核實或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注軟件測試頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費申請試課。關(guān)注官方微信了解更多:150 3333 6050
姓名:
手機:
地區(qū):