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