您的位置:極速下載站 → 電腦軟件 → 教育教學 → 編程開發(fā) → Visual Unit
測試代碼功能邏輯,實現(xiàn)高效率高質量編程。從前,單元測試很難做,現(xiàn)在,C單元測試與C++單元測試不用寫代碼了!
如果不做單元測試,編程產(chǎn)能大部分消耗在調試上。一個模塊的純編碼時間如果為10,那么,即時調試(編碼過程中的調試)時間在10-50之間,后期調試(集成后排除bug的調試)時間也在10-50之間。調試一個bug,一兩個小時不知不覺就過去了,一兩個小時能夠編寫一堆代碼。
單元測試節(jié)約90%的調試,假如單元測試本身不消耗時間,那么,編寫合格代碼的產(chǎn)能可以提升兩到三倍。可惜單元測試太難,太費時間,高成本基本上抵消了效益。雖然如此,還是有不少企業(yè)在實施或不斷嘗試單元測試,說明業(yè)界普遍認為,單元測試的效益,與投入相比,至少是持平的。
VU4實現(xiàn)了徹底的表格驅動,不用編寫測試驅動代碼和樁代碼,比現(xiàn)有的任何同類工具測試效率高10倍以上,意味著單元測試的時間成本降低90%,同時,只收服務費,使采購工具的成本也降低90%。如果在以前的時間成本和工具成本下,效益和成本是平衡的,那么,這兩項成本雙降90%意味著什么?大量的錢!如果程序員人手一套VU4,邊開發(fā)邊測試,對于一個效益還過得去的企業(yè),一位中級程序員一年可以產(chǎn)生20萬的效益!
10倍效率從何而來?
VU4完全表格驅動,不用寫測試代碼。請看下面的測試示例,測試涉及到:底層輸入(調用底層函數(shù)產(chǎn)生的數(shù)據(jù))、局部輸出(執(zhí)行過程中判斷變量)、對象指針鏈表、對象指針映射表。使用VU4,點幾下鼠標,在表格填幾行數(shù)據(jù)就OK了,別的工具要寫多少代碼?且哪個能判斷局部輸出?豈止是十倍效率。這個示例未涉及到局部輸入(中斷輸入、界面輸入、靜態(tài)輸入等),其設置也一樣。有些工具宣稱自動生成用例完成測試,那不是高效率,那是高忽悠,工具不可能自動了解代碼功能,因此不可能生成有意義的用例。VU4任意設置邏輯塊的輸入輸出,一個函數(shù)多個邏輯塊可以對應多個表格,天下沒有難測的代碼!
快速完成高標準覆蓋
歐美航空標準MC/DC覆蓋很強很科學,可是廣受質疑,因為太難了,但使用VU4,則一點也不難。VU4針對未覆蓋的邏輯單位,自動計算出近似用例及修改提示,根據(jù)提示修改近似用例,就可以找出隱藏很深的用例實現(xiàn)覆蓋。完成高標準覆蓋又是一個效率瓶頸,不過對VU4來說,卻是一項拿手好戲,進一步拉大測試效率的領先距離。
舒服地高效地編寫代碼
邏輯塊可視編程,提交前完成覆蓋,只進行粗線條調試。這就是Easy TDD,舒服而高效的編程模式。
VU4自動示出程序行為:什么輸入執(zhí)行什么代碼產(chǎn)生什么輸出。寫幾行代碼就觀察程序行為,看程序所做的跟你所想的是否一致、思路是否有偏差、錄入是否有錯誤,這樣編寫代碼尤其是復雜的邏輯計算代碼,舒服而高效。
編寫邏輯塊應該用可視編程,其他代碼可以先不測試,以保持原來的習慣以及專注。VU4自動統(tǒng)計近期編寫或修改的函數(shù),提交代碼到版本管理工具前,或模塊的編寫告一段落時,再把沒測的跑一下看一下,并完成覆蓋,相當于代碼的復查。
平常的調試,可以只用來跟蹤大的流程,不必調試邏輯塊。后期發(fā)現(xiàn)了bug,調試只用來粗略定位,例如判斷是哪個函數(shù)的問題,然后補充用例數(shù)據(jù),修改代碼并使單元測試通過,問題就解決了。
下圖示出代碼編寫過程中對程序行為的觀察。本來以為功能都實現(xiàn)了,可是結果不對,為什么呢?如果代碼是你寫的,一下子就看出原因來了:指針偏移后沒有恢復。圖中,黑色代碼是當前輸入下執(zhí)行的代碼。寫幾行代碼就可以觀察程序行為,這就是可視編程。
下圖是提交前完成覆蓋的界面,對于圖示的沒有邏輯計算的代碼,不用做任何工作,直接執(zhí)行一下就可以完成覆蓋。也可以把近期更新的函數(shù)一次性執(zhí)行,然后查看黃燈和紅燈函數(shù)。
小編總結
大道至簡,使用VU4,單元測試很簡單。
人手一套VU4,編寫合格代碼的產(chǎn)能立刻提升到原來的二到三倍,而且開發(fā)過程很舒服。節(jié)約一張紙很有意義,但節(jié)約程序員的一分鐘,意義要大很多很多,人才,才是比較昂貴的。
從前,單元測試誰都做不了或成本太高,如今,平衡已被打破。如果做外包,投標時承諾單元測試將秒殺對手(哪個發(fā)包方不重視項目質量?);如果做產(chǎn)品,快速的開發(fā)過程,將幫你搶占市場先機,搶占幾次先機,就把對手遠遠甩掉了。
凱樂軟件竭誠希望為您提供服務,謝謝!
更新日志
1、增加了調試功能
2、增加了對集成覆蓋的統(tǒng)計功能。
3、對于函數(shù)指針,增加了自動生成實現(xiàn)和在表格中直接設值的功能,參見函數(shù)指針賦值。
4、針對部分嵌入式項目將數(shù)字作為指針使用的場景,增加了自動生成代碼和自動替換的功能,不再需要手工添加代碼和添加替換,參見數(shù)字轉為指針。
5、改進了對數(shù)組參數(shù)的處理,將一維數(shù)組設為NULL,或對未指定數(shù)量的一維數(shù)組修改類型,均可在表格中直接操作,不再需要修改用例代碼。同時改進了對數(shù)組出參數(shù)的底層輸入支持。 參見數(shù)組及序列賦值。
6、增加了“數(shù)據(jù)深度”選項,用于提升測試和調試的運行速度,如果測試速度較慢,或調試功能不正常,可在“設定”的“功能”頁設置數(shù)據(jù)深度(推薦設為3或2)。參見數(shù)據(jù)窗口。
7、一些小缺陷的修復或優(yōu)化。
文件信息
文件大�。�30908658 字節(jié)
文件說明:C/C++單元測試工具Visual Unit 4.5安裝文件
文件版本:4.5
MD5:9A59DD94B41B3F55C14D4F41369B0922
SHA1:D0441E21376FAD3D999BFB72D79A61113E6EFFE7
CRC32:5D73C9CF
官方網(wǎng)站:http://www.kailesoft.com/