嵌入式系統(tǒng)測(cè)試與調(diào)試_第1頁(yè)
嵌入式系統(tǒng)測(cè)試與調(diào)試_第2頁(yè)
嵌入式系統(tǒng)測(cè)試與調(diào)試_第3頁(yè)
嵌入式系統(tǒng)測(cè)試與調(diào)試_第4頁(yè)
嵌入式系統(tǒng)測(cè)試與調(diào)試_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

嵌入式系統(tǒng)測(cè)試與調(diào)試第一頁(yè),共三十六頁(yè),2022年,8月28日接下來(lái)介紹本章第二節(jié)內(nèi)容嵌入式軟件開(kāi)發(fā)環(huán)境嵌入式軟件測(cè)試嵌入式系統(tǒng)調(diào)試嵌入式軟件的固化運(yùn)行第二頁(yè),共三十六頁(yè),2022年,8月28日第二節(jié)介紹嵌入式軟件測(cè)試嵌入式軟件測(cè)試策略嵌入式系統(tǒng)測(cè)試工具第三頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試嵌入式產(chǎn)品的特點(diǎn)應(yīng)用系統(tǒng)日趨復(fù)雜競(jìng)爭(zhēng)要求產(chǎn)品快速上市開(kāi)發(fā)技術(shù)日新月異硬件發(fā)展的日益穩(wěn)定軟件故障日益突出軟件的重要性逐漸引起人們的重視嵌入式系統(tǒng)的測(cè)試勢(shì)在必行第四頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試首先簡(jiǎn)單介紹軟件的定義軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分軟件包括:程序相關(guān)數(shù)據(jù)說(shuō)明文檔第五頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試首先簡(jiǎn)單介紹軟件的定義(續(xù))程序是按照事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列;數(shù)據(jù)是是程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu);文檔是與程序開(kāi)發(fā)維護(hù)和使用有關(guān)的各種圖文資料。第六頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試軟件測(cè)試的目的軟件測(cè)試的目的是發(fā)現(xiàn)程序中的錯(cuò)誤是為了證明軟件有錯(cuò)而不是證明軟件無(wú)錯(cuò)第七頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試嵌入式軟件測(cè)試的特點(diǎn)由于嵌入式系統(tǒng)自身特點(diǎn),如:實(shí)時(shí)性內(nèi)存不豐富I/O通道少開(kāi)發(fā)工具昂貴與硬件緊密相關(guān)CPU種類繁多,等等。嵌入式軟件的開(kāi)發(fā)和測(cè)試不同于桌面系統(tǒng)開(kāi)發(fā)和測(cè)試是最難測(cè)試的一種軟件。第八頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試如何解決嵌入式軟件測(cè)試難的問(wèn)題?使用有效的測(cè)試策略是唯一的出路由于嵌入式系統(tǒng)使用交叉開(kāi)發(fā)環(huán)境,相應(yīng)的測(cè)試定義為host-target測(cè)試或cross-testing。那么,是在目標(biāo)機(jī)上測(cè)試還是在宿主機(jī)上測(cè)試?第九頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試假如測(cè)試都在目標(biāo)機(jī)上,看看有什么問(wèn)題:1)可能會(huì)與開(kāi)發(fā)者爭(zhēng)奪時(shí)間、資源避免它只有提供更多的目標(biāo)環(huán)境;2)目標(biāo)環(huán)境可能還不可行;3)比起主機(jī)平臺(tái)環(huán)境,目標(biāo)環(huán)境通常是不精密和不方便;4)提供給開(kāi)發(fā)者的目標(biāo)環(huán)境和聯(lián)合開(kāi)發(fā)環(huán)境通常很昂貴;5)開(kāi)發(fā)和測(cè)試工作可能會(huì)妨礙目標(biāo)環(huán)境已存在持續(xù)的應(yīng)用。第十頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試測(cè)試建議:從經(jīng)濟(jì)和開(kāi)發(fā)效率的角度考慮軟件開(kāi)發(fā)周期中盡可能大的比例在主機(jī)系統(tǒng)環(huán)境中進(jìn)行,其中包括測(cè)試。第十一頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試確定host-target測(cè)試環(huán)境后,開(kāi)發(fā)測(cè)試人員又會(huì)遇到什么問(wèn)題?1)多少開(kāi)發(fā)人員會(huì)卷入測(cè)試工作?2)多少軟件應(yīng)測(cè)試,測(cè)試花多長(zhǎng)時(shí)間?3)在主機(jī)環(huán)境和目標(biāo)環(huán)境有哪些軟件工具,價(jià)格怎樣,適合程度如何?4)多少目標(biāo)環(huán)境可提供給開(kāi)發(fā)者,何時(shí)?5)主機(jī)和目標(biāo)機(jī)之間如何連接,以何種方式實(shí)現(xiàn)主機(jī)與目標(biāo)機(jī)間的通訊?6)被測(cè)軟件下載到目標(biāo)機(jī)有多快?7)使用主機(jī)與目標(biāo)環(huán)境之間有什么限制?第十二頁(yè),共三十六頁(yè),2022年,8月28日接下來(lái)介紹嵌入式軟件測(cè)試嵌入式軟件測(cè)試策略嵌入式系統(tǒng)測(cè)試工具第十三頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略針對(duì)上述問(wèn)題應(yīng)采用一些測(cè)試策略1.單元測(cè)試2.集成測(cè)試3.確認(rèn)測(cè)試4.系統(tǒng)測(cè)試第十四頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略1.單元測(cè)試單元測(cè)試指對(duì)源程序中每一個(gè)程序單元進(jìn)行測(cè)試檢查各個(gè)模塊是否正確實(shí)現(xiàn)規(guī)定的功能從而發(fā)現(xiàn)模塊在編碼中的錯(cuò)誤該階段涉及編碼和詳細(xì)設(shè)計(jì)的文檔第十五頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略1.單元測(cè)試(續(xù))所有單元級(jí)測(cè)試都可在主機(jī)環(huán)境上進(jìn)行除非少數(shù)情況,特別指定了單元測(cè)試在目標(biāo)環(huán)境進(jìn)行在主機(jī)平臺(tái)上運(yùn)行,測(cè)試速度比在目標(biāo)平臺(tái)上快的多最大化在主機(jī)環(huán)境進(jìn)行軟件測(cè)試的比例,通過(guò)盡可能小的目標(biāo)單元訪問(wèn)所有目標(biāo)指定的界面。第十六頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略1.單元測(cè)試(續(xù))當(dāng)在主機(jī)平臺(tái)完成測(cè)試,也可在目標(biāo)環(huán)境上重復(fù)作一個(gè)簡(jiǎn)單的確認(rèn)測(cè)試以確定一些未知的,未預(yù)料到的,未說(shuō)明的主機(jī)與目標(biāo)機(jī)的不同例如,目標(biāo)編譯器可能有bug,但在主機(jī)編譯器上沒(méi)有通過(guò)目標(biāo)環(huán)境上的確認(rèn)測(cè)試,確認(rèn)不會(huì)因?yàn)橹鳈C(jī)和目標(biāo)機(jī)的不同而產(chǎn)生不同的測(cè)試結(jié)果第十七頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略2.集成測(cè)試在單元測(cè)試的基礎(chǔ)上,將所有模塊按照設(shè)計(jì)要求組裝成一個(gè)完整的系統(tǒng)而進(jìn)行的測(cè)試檢查與設(shè)計(jì)相關(guān)的軟件體系結(jié)構(gòu)的有關(guān)問(wèn)題第十八頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略2.集成測(cè)試(續(xù))軟件集成也可在主機(jī)環(huán)境上完成在主機(jī)平臺(tái)上模擬目標(biāo)環(huán)境運(yùn)行當(dāng)然在目標(biāo)環(huán)境上重復(fù)測(cè)試也是必須的在此級(jí)別上的確認(rèn)測(cè)試將確定一些環(huán)境上的問(wèn)題,比如內(nèi)存定位和分配上的一些錯(cuò)誤。第十九頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略2.集成測(cè)試(續(xù))在主機(jī)環(huán)境上的集成測(cè)試,依賴于目標(biāo)系統(tǒng)的具體功能有些嵌入式系統(tǒng)與目標(biāo)環(huán)境耦合非常緊密,在主機(jī)環(huán)境做集成是不切實(shí)際的一個(gè)大型軟件的開(kāi)發(fā)可以分幾個(gè)級(jí)別的集成低級(jí)別的軟件集成在主機(jī)平臺(tái)上完成有很大優(yōu)勢(shì)越往后的集成越依賴于目標(biāo)環(huán)境第二十頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略3.確認(rèn)測(cè)試和系統(tǒng)測(cè)試所有的確認(rèn)測(cè)試和系統(tǒng)測(cè)試必須在目標(biāo)環(huán)境下執(zhí)行當(dāng)然在主機(jī)上開(kāi)發(fā)和執(zhí)行系統(tǒng)測(cè)試,然后移植到目標(biāo)環(huán)境重復(fù)執(zhí)行是很方便的但對(duì)目標(biāo)系統(tǒng)的依賴會(huì)妨礙將主機(jī)環(huán)境上的系統(tǒng)測(cè)試移植到目標(biāo)系統(tǒng)且只有少數(shù)開(kāi)發(fā)者參與系統(tǒng)測(cè)試所以有時(shí)放棄在主機(jī)環(huán)境上執(zhí)行系統(tǒng)測(cè)試可能更方便。第二十一頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試策略3.確認(rèn)測(cè)試和系統(tǒng)測(cè)試(續(xù))確認(rèn)測(cè)試最終的實(shí)施舞臺(tái)必須在目標(biāo)環(huán)境中。系統(tǒng)的確認(rèn)必須在真實(shí)系統(tǒng)之下測(cè)試,這關(guān)系到嵌入式軟件的最終使用。第二十二頁(yè),共三十六頁(yè),2022年,8月28日總結(jié)一下Cross-test時(shí)的策略:A)使用測(cè)試工具的插樁功能(主機(jī)環(huán)境)執(zhí)行靜態(tài)測(cè)試分析,并且為動(dòng)態(tài)覆蓋測(cè)試準(zhǔn)備好一插樁好的軟件代碼。B)使用源碼在主機(jī)環(huán)境執(zhí)行功能測(cè)試,修正軟件錯(cuò)誤和測(cè)試腳本中的錯(cuò)誤。C)使用插樁后的軟件代碼執(zhí)行覆蓋率測(cè)試,添加測(cè)試用例或修正軟件的錯(cuò)誤,保證達(dá)到所要求的覆蓋率目標(biāo)。D)在目標(biāo)環(huán)境下重復(fù)(B),確認(rèn)軟件在目標(biāo)環(huán)境中執(zhí)行測(cè)試的正確性。E)若測(cè)試需要達(dá)到極端的完整性,最好在目標(biāo)系統(tǒng)上重復(fù)(C),確定軟件的覆蓋率沒(méi)有改變。第二十三頁(yè),共三十六頁(yè),2022年,8月28日接下來(lái)介紹嵌入式軟件測(cè)試嵌入式軟件測(cè)試策略嵌入式系統(tǒng)測(cè)試工具第二十四頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件測(cè)試工具測(cè)試工具能夠用來(lái)輔助測(cè)試的工具主要用來(lái)支持測(cè)試人員的工作本身不能直接用來(lái)進(jìn)行測(cè)試測(cè)試工具一般都是通用工具測(cè)試人員應(yīng)該根據(jù)實(shí)際情況對(duì)它們進(jìn)行適當(dāng)?shù)恼{(diào)整。第二十五頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具嵌入式軟件測(cè)試中經(jīng)常用到的測(cè)試工具有:內(nèi)存分析工具性能分析工具覆蓋分析工具缺陷跟蹤工具等

第二十六頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具內(nèi)存分析工具

嵌入式系統(tǒng)的內(nèi)存資源通常是受限的,內(nèi)存分析工具可以用來(lái)處理在進(jìn)行動(dòng)態(tài)內(nèi)存分配時(shí)產(chǎn)生的缺陷。當(dāng)動(dòng)態(tài)分配的內(nèi)存被錯(cuò)誤地引用時(shí),產(chǎn)生的錯(cuò)誤通常難以再現(xiàn),出現(xiàn)的失效難以追蹤,使用內(nèi)存分析工具可以很好地檢測(cè)出這類缺陷。第二十七頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具目前常用的內(nèi)存分析工具有軟件和硬件兩種:基于軟件的內(nèi)存分析工具可能會(huì)對(duì)代碼的執(zhí)行性能帶來(lái)很大影響,從而影響系統(tǒng)的實(shí)時(shí)性;基于硬件的內(nèi)存分析工具對(duì)系統(tǒng)性能影響小,但價(jià)格昂貴,并且只能在特定的環(huán)境中使用。

第二十八頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具性能分析工具

嵌入式系統(tǒng)的性能通常是一個(gè)非常關(guān)鍵的因素開(kāi)發(fā)人員一般需要對(duì)系統(tǒng)的某些關(guān)鍵代碼進(jìn)行優(yōu)化來(lái)改進(jìn)性能。第二十九頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具性能分析工具(續(xù))可以提供有關(guān)數(shù)據(jù),幫助確定哪些任務(wù)消耗了過(guò)多的執(zhí)行時(shí)間,從而可以決定如何優(yōu)化軟件,以獲得更好的時(shí)間性能。引導(dǎo)開(kāi)發(fā)人員發(fā)現(xiàn)在系統(tǒng)調(diào)用中存在的錯(cuò)誤以及程序結(jié)構(gòu)上的缺陷。

第三十頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具覆蓋分析工具

在進(jìn)行白盒測(cè)試時(shí),可以使用代碼覆蓋分析工具追蹤哪些代碼被執(zhí)行過(guò)分析過(guò)程一般通過(guò)插樁來(lái)完成插樁可以是在測(cè)試環(huán)境中嵌入硬件也可以是在可執(zhí)行代碼中加入軟件或者是兩者的結(jié)合第三十一頁(yè),共三十六頁(yè),2022年,8月28日嵌入式軟件的測(cè)試工具覆蓋分析工具(續(xù))開(kāi)發(fā)人員通過(guò)對(duì)分析結(jié)果的總結(jié),可以確定哪些代碼被執(zhí)行過(guò),哪些代碼被遺漏了目前常用的覆蓋分析工具一般都提供有關(guān)功能覆蓋、分支覆蓋、條件覆蓋等信息。第三十二頁(yè),共三十六頁(yè),2022年,8月28日測(cè)試工具實(shí)例:邏輯分析儀工作機(jī)理在不打斷被測(cè)程序運(yùn)行流程的基礎(chǔ)上對(duì)程序運(yùn)行中的相關(guān)信息進(jìn)行采集和分析通過(guò)真實(shí)再現(xiàn)程序運(yùn)行的邏輯流程和分析程序運(yùn)行數(shù)據(jù)幫助用戶優(yōu)化系統(tǒng)設(shè)計(jì)和解決出現(xiàn)的問(wèn)題。第三十三頁(yè),共三十六頁(yè),2022年,8月28日測(cè)試工具實(shí)例:邏輯分析儀與調(diào)試工具的對(duì)比調(diào)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論