性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發(fā)新帖

單元測試的重要性

  當前在復雜的國際國內(nèi)環(huán)境下,我國正在加大工業(yè)投資,爭取實現(xiàn)彎道超車。雖然不差錢,但是許多公司為了效益,不愿在不能直觀體現(xiàn)效率的基礎(chǔ)環(huán)節(jié)單元測試上花費時間,不愿投資一點資金到單元測試工具上。這就導致了一些很小的錯誤不能在早期被發(fā)現(xiàn),直到應(yīng)用階段才被發(fā)現(xiàn)。這時再查找錯誤時,勢必花費多得多的人力財力,這時才發(fā)現(xiàn)早期省的小錢是得不償失的。

  要想變成日本德國類的工業(yè)強國,必須注重基礎(chǔ)環(huán)節(jié)的精細化,而不是靠某人的高能力。早期開發(fā)階段必須做單元測試,發(fā)現(xiàn)錯誤即時修改,經(jīng)過多次迭代,才可以杜絕小問題,從而避免后期大問題的出現(xiàn),這樣才可以做出精品。winAMS是一套針對C/C++的,取得汽車功能安全標準ISO26262認證,集合靜態(tài)分析、單元測試、集合測試于一體的工具集。winAMS對于驗證高安全和業(yè)務(wù)關(guān)鍵的嵌入式系統(tǒng)來說是非常必要的。

  winAMS既可用于新開發(fā)的程序,也適用于原有應(yīng)用程序的測試,一般企業(yè)也能從中體會C/C++單元測試的好處,幫助開發(fā)者精簡測試流程,使測試可自動重復進行。將測試從手動的過程,提升為嚴謹?shù)墓こ?。自動建立框架來分離新開發(fā)的代碼,從而降低成本。

  一般而言, 單元和集成測試是在開發(fā)人員建立好代碼之后進行的。獨立的軟件組件創(chuàng)建好之后,就會生成測試代碼取代被測單元的外部依賴。這部分測試代碼,被稱為測試套件。該測試套件包含用來調(diào)用被測對象的測試驅(qū)動、用于取代外部依賴的樁函數(shù)等。winAMS自動建立測試驅(qū)動和樁函數(shù),因此,開發(fā)人員可以更專注于建立高質(zhì)量的代碼和完整的測試用例。

  winAMS是基于目標文件,在自帶各種芯片仿真器上進行單元測試。通過仿真器,你可以清楚看到真實的程序是如何運行的,理解各種寄存器的調(diào)用,清楚內(nèi)存的分配。

  自動化軟件單元測試最重要的一個好處就是能夠在源碼變更之后進行回歸測試,確保源碼變更后不會引入新的錯誤。測試用例生成之后,以文本形式保存,很方便地保存在工具目錄中。winAMS可以同時選擇所有用例,在空閑時間自動執(zhí)行,生成測試報告,方便查看當天有沒有引入新錯誤。在開發(fā)生命周期里,盡早找到問題,將大幅減少后期的調(diào)試時間,從而提高代碼質(zhì)量并降低成本。

  總而言之,單元測試將讓我們的開發(fā)工作變得更加輕松,讓我們對自己的代碼更加自信。無論是項目的規(guī)模大小,無論是時間緊迫的項目還是時間寬裕的項目,只要代碼不是一次寫完永不改動,編寫單元測試就一定超值。我希望它能成為公司編碼過程中不可缺少的一部分。

  單元測試僅僅是軟件質(zhì)量保證的一個環(huán)節(jié),軟件的質(zhì)量由組織、流程和技術(shù)三個維度來決定,任何一個維度都不能單獨決定軟件的質(zhì)量。好的組織結(jié)構(gòu)可以保證流程的順利實施,好的流程能提高軟件開發(fā)的規(guī)范性和可控性,從而提高軟件開發(fā)的效率和質(zhì)量,而采用了好的技術(shù)和有好的技術(shù)的載體--人,則從根本上 保證了軟件的質(zhì)量。

因此單元測試具有以下意義:

  1.單元測試集中注意力于程序的基本組成部分,首先保證每個單元測試通過,才能使下一步把單元組裝成部件并測試其正確性具有基礎(chǔ)。單元是整個軟件的構(gòu)成基礎(chǔ),像硬件系統(tǒng)中的零部件一樣,只有保證零部件的質(zhì)量,這個設(shè)備的質(zhì)量才有基礎(chǔ),單元的質(zhì)量也是整個軟件質(zhì)量的基礎(chǔ)。因此,單元測試的效果會直接影響軟件的后期測試,最終在很大程度上影響到產(chǎn)品的質(zhì)量。

  2.單元測試可以平行開展,這樣可以使多人同時測試多個單元,提高了測試的效率。

  3.單元規(guī)模較小,復雜性較低,因而發(fā)現(xiàn)錯誤后容易隔離和定位,有利于調(diào)試工作。

  4.單元的規(guī)模和復雜性特點,使單元測試中可以使用包括白盒測試的覆蓋分析在內(nèi)的許多測試技術(shù),能夠進行比較充分細致的測試,是整個程序測試滿足語句覆蓋和分支覆蓋要求的基礎(chǔ)。

  5.單元測試的測試效果是最顯而易見的。做好單元測試,不僅后期的系統(tǒng)集成聯(lián)調(diào)或集成測試和系統(tǒng)測試會很順利,節(jié)約很多時間;而且在單元測試過程中能發(fā)現(xiàn)一些很深層次的問題,同時還會發(fā)現(xiàn)一些很容易發(fā)現(xiàn)而在集成測試和系統(tǒng)測試很難發(fā)現(xiàn)的問題;更重要的是單元測試不僅僅是證明這些代碼做了什么,是如何做的,而且證明是否做了它該做的事情而沒有做不該做的事情。

  6.單元測試的好與壞不僅直接關(guān)系到測試成本(因為如果單元測試中易發(fā)現(xiàn)的問題拖到后期測試發(fā)現(xiàn),那么其成本將成倍數(shù)上升),而且也會直接影響到產(chǎn)品質(zhì)量,因為可能就是由于代碼中的某一個小錯誤就導致了整個產(chǎn)品的質(zhì)量降低一個指標,或者導致更嚴重的后果。

 

 

全部回復(0)
正序查看
倒序查看
現(xiàn)在還沒有回復呢,說說你的想法
發(fā)