嵌入式軟件覆蓋測試通用技術(shù)研究.pdf_第1頁
已閱讀1頁,還剩57頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、隨著軟件應(yīng)用領(lǐng)域的不斷擴(kuò)展,嵌入式系統(tǒng)得到了充分的發(fā)展,并被廣泛地應(yīng)用于工業(yè)控制、智能家居、消費(fèi)電子、物聯(lián)網(wǎng)、無線通訊等領(lǐng)域。作為嵌入式系統(tǒng)的重要組成部分,嵌入式軟件的質(zhì)量引起了各方的高度重視。軟件測試是保證軟件質(zhì)量的重要手段。其中覆蓋測試技術(shù)是軟件白盒測試的重要方法之一。與傳統(tǒng)軟件相比,嵌入式軟件具有專用性,一般只能在特定的硬件平臺上執(zhí)行。而且由于嵌入式軟件的開發(fā)環(huán)境和運(yùn)行環(huán)境不一致,導(dǎo)致無論在宿主機(jī)測試如何充分,也不能保證在目標(biāo)機(jī)上

2、就能正常執(zhí)行。此外嵌入式軟件存在實(shí)時(shí)性、系統(tǒng)資源有限等特點(diǎn),傳統(tǒng)軟件覆蓋測試技術(shù)并不能直接應(yīng)用于嵌入式軟件測試。當(dāng)前大部分針對嵌入式軟件的測試是基于全數(shù)字仿真平臺的,被測軟件運(yùn)行在仿真模擬環(huán)境中,測試之前需要耗費(fèi)大量的時(shí)間精力對目標(biāo)機(jī)進(jìn)行數(shù)字仿真,且隨著嵌入式系統(tǒng)日趨復(fù)雜,仿真的代價(jià)越來越高。同時(shí)測試工具都主要針對特定被測軟件,測試平臺都是從底層重新做起,沒有一個(gè)很好的通用平臺提供支持,導(dǎo)致測試周期長資源利用率低。
  針對嵌入式

3、軟件覆蓋測試的特點(diǎn),本文對嵌入式軟件覆蓋測試關(guān)鍵技術(shù)的進(jìn)行深入研究,包括源代碼分析、程序插樁、覆蓋算法等,提出了嵌入式軟件覆蓋測試模型?;贓clipse CDT/JDT工具實(shí)現(xiàn)對被測程序源代碼分析,通過修改CDT/JDT部分源碼以定制測試所需的抽象語法樹信息,再進(jìn)行預(yù)處理,得到標(biāo)準(zhǔn)的被測軟件程序結(jié)構(gòu)信息以供后續(xù)使用。從程序塊的劃分原則、插樁策略、探針函數(shù)設(shè)計(jì)三個(gè)方面討論了插樁技術(shù)。闡述了語句覆蓋、分支覆蓋、條件覆蓋、基本路徑覆蓋四種覆

4、蓋策略的覆蓋算法。特別地,針對覆蓋測試流程中源代碼分析、插樁植入探針、編譯鏈接、程序執(zhí)行、測試數(shù)據(jù)分析等階段,分別提出了旨在提高通用性的解決方案。在源代碼分析階段,依托Eclipse CDT/JDT開源包實(shí)現(xiàn)對C、C++、JAVA多種不同語言源代碼分析,得到包含被測程序關(guān)鍵信息的抽象語法樹,對抽象語法樹中的冗余信息進(jìn)行消除,提高遍歷的效率;在插樁階段,闡述了插樁位置的選擇策略、插樁策略以及探針函數(shù)設(shè)計(jì)策略,以減少插樁對被測軟件的影響,提

5、高程序執(zhí)行效率,并通過設(shè)立探針函數(shù)庫來支持不同語言、不同插樁策略下對探針函數(shù)的需求;在編譯階段,針對使用不同語言開發(fā)運(yùn)行在不同平臺上的嵌入式軟件可以自定義編譯時(shí)使用的編譯器,編譯后可以直接在目標(biāo)機(jī)運(yùn)行;在執(zhí)行階段,由于測試是基于半實(shí)物測試環(huán)境的,在半實(shí)物測試環(huán)境下,宿主機(jī)是測試模型的核心,目標(biāo)機(jī)環(huán)境具有可替換性,只需要更換目標(biāo)機(jī)即可實(shí)現(xiàn)對不同硬件平臺被測軟件的測試,實(shí)現(xiàn)測試平臺與具體測試硬件資源無關(guān)性;在測試數(shù)據(jù)傳輸時(shí),使用XML作為測

6、試數(shù)據(jù)存儲的媒介,XML能方便有效地表示結(jié)構(gòu)化數(shù)據(jù),通過XML實(shí)現(xiàn)數(shù)據(jù)的標(biāo)準(zhǔn)化、結(jié)構(gòu)化,解決不同平臺、不同系統(tǒng)之間的數(shù)據(jù)結(jié)構(gòu)差異的問題。
  本文根據(jù)提出的測試模型,搭建了嵌入式軟件交叉測試環(huán)境,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)支持該模型的嵌入式軟件測試平臺,平臺能夠?qū)贑、C++、JAVA語言開發(fā)的嵌入式軟件進(jìn)行覆蓋測試,支持的覆蓋策略包括語句覆蓋、分支覆蓋、條件覆蓋、基本路徑覆蓋。利用該測試平臺對多個(gè)被測軟件進(jìn)行測試,以可視化的數(shù)據(jù)和圖形顯

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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

提交評論