嵌入式軟件單元測試方法研究報(bào)告_第1頁
嵌入式軟件單元測試方法研究報(bào)告_第2頁
嵌入式軟件單元測試方法研究報(bào)告_第3頁
嵌入式軟件單元測試方法研究報(bào)告_第4頁
嵌入式軟件單元測試方法研究報(bào)告_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

嵌入式軟件單元測試方法研究

劉佳楊永文李金華摘

要:嵌入式軟件通常采用交叉開發(fā)的方式,盡早進(jìn)行軟件測試可以及時(shí)發(fā)現(xiàn)軟件開發(fā)初期的不足。單元測試是嵌入式軟件開發(fā)過程中最基礎(chǔ)級別的測試活動。本文對嵌入式軟件的單元測試進(jìn)行了分析,主要包括測試工具的選擇、測試內(nèi)容的梳理和測試過程的優(yōu)化,重點(diǎn)闡述了注意事項(xiàng)及原則。通過總結(jié)分析,提出了適宜操作的嵌入式軟件單元測試方法。實(shí)踐證明,該方法大大提高了軟件測試水平和軟件產(chǎn)品代碼的質(zhì)量。Key:測試計(jì)劃;單元測試;測試過程;嵌入式軟件:TP311.5

:AAbstract:Asthecross-developmentmethodisusuallyappliedforembeddedsoftware,softwaretestingisconductedearly,soastopromptlyfindoutthedefectsandproblemsattheearlystageofsoftwaredevelopment.Unittestingisthebasictestingintheprocessofembeddedsoftwaredevelopment.Thispaperanalysesembeddedsoftwareunittesting,includingthechoiceoftestingtools,theanalysisoftestingcontentandtheoptimizationoftestingprocess,mainlydescribingthenotesandprinciples.Throughthecomprehensivesummaryandanalysis,thepaperproposesaneasy-to-operateandsuitableunittestingmethodforembeddedsoftware.Practiceindicatesthatthismethodgreatlyimprovesthelevelofsoftwaretestingandsoftwareproductquality.Keywords:testingplan;unittesting;testingprocess;embeddedsoftware1

引言(Introduction)由于嵌入式軟件運(yùn)行在嵌入式計(jì)算機(jī)系統(tǒng)中,且實(shí)時(shí)性強(qiáng)。開發(fā)人員在編寫完一段代碼后,很難立即有效地去運(yùn)行程序,從而導(dǎo)致缺陷越積越多。軟件單元測試是軟件開發(fā)過程中的一項(xiàng)基本活動,也是軟件驗(yàn)證、確認(rèn)的重要手段。通過一系列的單元測試,可改進(jìn)軟件質(zhì)量,有效地減少軟件漏洞的數(shù)量,降低程序的風(fēng)險(xiǎn),找到軟件中可能潛在的問題,提高代碼的規(guī)范性、穩(wěn)定性、可靠性。單元測試針對單個(gè)函數(shù)的測試,工作量大,處于施工設(shè)計(jì)的重要階段,時(shí)間緊,且發(fā)現(xiàn)的軟件問題“嚴(yán)重等級”較低,如果依靠人工進(jìn)行代碼審查、靜態(tài)分析,代碼打樁編寫執(zhí)行用例,成本較高,流程不清晰不可控,難以保證測試充分性。本文根據(jù)嵌入式軟件的特點(diǎn),基于多年的測試工作經(jīng)驗(yàn),參考相關(guān)的標(biāo)準(zhǔn),提出了一套適用的單元測試流程,包含測試工具、測試內(nèi)容、測試過程的標(biāo)準(zhǔn)化、規(guī)范化等要求。嵌入式軟件測試環(huán)境分為目標(biāo)機(jī)環(huán)境和宿主機(jī)環(huán)境。但在單元測試層面上,對于嵌入式軟件來講,除非特別指定在目標(biāo)機(jī)環(huán)境下進(jìn)行,都可以在宿主機(jī)環(huán)境進(jìn)行。2

單元測試工具(Unittestingtools)單元測試的本質(zhì)是針對代碼進(jìn)行測試,工作量和難度都比較大。采用合適的工具及有效的方法,可或多或少地實(shí)現(xiàn)“自動化”,極大提高測試效率,滿足單元測試的覆蓋率和準(zhǔn)確度要求,減少工作量,降低成本。常見的單元測試工具有PQRAQAC、C++Test、Logiscope、Tessy、LDRATestbed、PolySpace、Cantata等。本文采用QAC軟件作為靜態(tài)測試工具,該工具是針對C代碼的深度流靜態(tài)分析器,通過內(nèi)置的標(biāo)準(zhǔn)規(guī)則,以警告消息方式突顯代碼中存在的違規(guī)現(xiàn)象,幫助開發(fā)者改善軟件開發(fā)質(zhì)量[1]。采用Tessy軟件作為動態(tài)測試工具,針對嵌入式語言,能夠快速進(jìn)行驅(qū)動模塊樁模塊配置,用例設(shè)計(jì)可視化,并且可根據(jù)測試要求的不同,選擇不同的測試環(huán)境。Tessy可以實(shí)現(xiàn)代碼實(shí)際運(yùn)行結(jié)果和測試用例中設(shè)定的預(yù)期結(jié)果的自動對比,檢查代碼功能正確性。在進(jìn)行功能測試的同時(shí),還對代碼測試的覆蓋率進(jìn)行了統(tǒng)計(jì)。3

單元測試內(nèi)容(Contentofunittesting)在單元測試開展之前,需要對測試過程的各個(gè)階段進(jìn)行方法設(shè)計(jì),以作為具體工作的指導(dǎo)依據(jù)。嵌入式軟件單元測試要求可分為靜態(tài)測試階段和動態(tài)測試階段。3.1

靜態(tài)測試階段靜態(tài)測試是借助測試工具或人工檢查的方法,對被測程序進(jìn)行特性分析,查找軟件編碼的錯(cuò)誤,并對軟件單元的靜態(tài)度量指標(biāo)進(jìn)行分析。由于靜態(tài)測試不需要編譯或運(yùn)行代碼,因而也不會受到軟件內(nèi)部其他缺陷模塊的影響。靜態(tài)測試階段可分為代碼審查和靜態(tài)分析兩部分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論