當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]嵌入式軟件軟硬件集成測試過程研究

引言

  軟件質(zhì)量即業(yè)務(wù)生命。軟件測試項目已經(jīng)變得比以往任何時候都復(fù)雜和困難。1979年,Glenford Myers在《The Art of Software Testing》一書中提出“測試的目的是證偽”這一概念,推翻了過去“為表明軟件正確而進行測試”的錯誤認識,為軟件測試的發(fā)展指出了方向,軟件測試的理論、方法在之后得到了長足的發(fā)展。但是,目前中國許多軟件企業(yè)仍存在著“重開發(fā)、輕測試”的傾向,從而造成軟件產(chǎn)品的質(zhì)量問題日漸突出。因此,如何制定有效的軟件測試過程、保障軟件業(yè)的健康化發(fā)展,已成為當(dāng)務(wù)之急。

  嵌入式軟件作為軟件家族中重要的分支,在當(dāng)今人民生活和國防事業(yè)中得到越來越廣泛的應(yīng)用,由于嵌入式軟件自身軟硬件結(jié)合的復(fù)雜性、其質(zhì)量的重要性,也造就了其軟件測試的特殊性,那就是在執(zhí)行正常軟件測試的單元測試、集成測試、配置項測試、系統(tǒng)測試的過程中,還要考慮到軟件與硬件的兼容問題,即需要進行軟、硬件集成測試。本文將重點研究嵌入式軟件與硬件集成時的測試過程。

  根據(jù)筆者在嵌入式軟件測試工作過程中的經(jīng)驗,歸納提出了軟硬件集成測試過程,同時結(jié)合當(dāng)前軟件測試理論前沿知識,把該測試過程進行重組和改進,并給出了測試模型,以期嵌入式軟件與硬件集成測試過程能夠在實際中廣泛應(yīng)用。

  1 、嵌入式軟件測試基本概念

  1.1 嵌入式軟件

  和普通計算機系統(tǒng)一樣,嵌入式系統(tǒng)除了需要硬件結(jié)構(gòu)和配置外,還需要相應(yīng)軟件的支持才能完整地實現(xiàn)系統(tǒng)的功能。目前,嵌入式系統(tǒng)的軟件體系結(jié)構(gòu)通常都采用以實時內(nèi)核為基礎(chǔ)的分層體系結(jié)構(gòu)。組成嵌入式系統(tǒng)的軟件大致可分為如下幾層:

  驅(qū)動層(硬件抽象層):驅(qū)動層是最靠近硬件的一層,它屬于最底層的軟件,直接和硬件打交道,它為操作系統(tǒng)內(nèi)核和應(yīng)用提供使用硬件的接口即驅(qū)動的支持。

  操作系統(tǒng)層(實時內(nèi)核層):該層的主要功能是協(xié)助最頂層的應(yīng)用層更好地進行任務(wù)的調(diào)度、消息管理和異常處理等工作,由于該層的支持,特別是實時內(nèi)核的作用,大大地減輕了嵌入式軟件開發(fā)人員開發(fā)嵌入式軟件的難度,同時也縮短了嵌入式軟件的開發(fā)周期。

  應(yīng)用軟件實現(xiàn)支持層:嵌入式應(yīng)用軟件的實現(xiàn)需要編程語言的支持。目前,應(yīng)用于嵌入式軟件編程語言主要有面向過程的語言C和面向?qū)ο蟮木幊陶Z言C++、ADA等,應(yīng)用這些語言開發(fā)的應(yīng)用程序在嵌入式系統(tǒng)中運行時都需要相應(yīng)的編譯器或解釋器的支持,轉(zhuǎn)換成相應(yīng)的機器碼,才能在嵌入式系統(tǒng)中實現(xiàn)應(yīng)用程序?qū)?yīng)的功能。

  應(yīng)用層:應(yīng)用層軟件主要由多個相對獨立的應(yīng)用任務(wù)組成,每個應(yīng)用任務(wù)完成特定的工作,如計算任務(wù)和通信任務(wù)等,各個任務(wù)的運行由操作系統(tǒng)進行調(diào)度。

  1.2 測試用語

  嵌入式軟件(Embedded Software):嵌入式計算機系統(tǒng)中的軟件,其與硬件聯(lián)系緊密,并且通常要求強實時性。

  測試環(huán)境(TeST EnvirONment):執(zhí)行測試程序所需要的硬件平臺和軟件資源構(gòu)成的環(huán)境。

  測試用例(Test Case):為測試項規(guī)定輸入、預(yù)期結(jié)果和一組執(zhí)行條件的文檔。

  測試程序(Test Procedure):執(zhí)行測試用例的程序形式,其執(zhí)行需要相應(yīng)測試環(huán)境的支持。

  問題描述報告(Problem DescripTIon Report):對軟件測試過程中發(fā)現(xiàn)問題的簡要描述。

  更改的判定條件覆蓋(Modified Condition/Decision Coverage, MC/DC):對設(shè)計足夠多的測試用例,使得判定中每個條件的所有可能結(jié)果至少出現(xiàn)一次,每個判定本身的所有可能結(jié)果也至少出現(xiàn)一次,每個入口點和出口點至少要喚醒一次,并且每個條件都顯示能單獨影響判定結(jié)果。

  


 

  圖1 嵌入式軟件軟硬件集成測試過程

  2 、 軟硬件集成測試過程

  軟硬件集成測試應(yīng)該在嵌入式軟件集成測試完成的基礎(chǔ)上進行。此時軟件已按照功能模塊組裝成子系統(tǒng),為了有效驗證該子系統(tǒng)軟件與硬件功能的協(xié)調(diào)性,保證軟件在特定的硬件平臺上能夠按照設(shè)計的要求進行工作,完成其要求的功能、性能指標,就必須進行嵌入式軟件的軟硬件集成測試。

  2.1 嵌入式軟件測試過程

  軟件開發(fā)人員在開發(fā)過程中,一般遵循如下步驟:

 ?、?系統(tǒng)軟硬件功能劃分,形成軟、硬件研制任務(wù)書。

 ?、?系統(tǒng)軟件需求分析。

  ③ 系統(tǒng)軟件概要設(shè)計。[!--empirenews.page--]

 ?、?系統(tǒng)軟件詳細設(shè)計。

  ⑤ 軟件編碼。

  測試人員恰恰以相反的步驟實現(xiàn)測試過程:

  ① 單元測試。軟件單元測試的目的是檢測程序模塊是否符合《詳細設(shè)計說明書》的要求。通常會采用白盒測試技術(shù),如基于路徑覆蓋原理等。

  ② 集成測試(配置項測試)。軟件集成測試的目的是檢測程序是否符合《概要設(shè)計說明書》的要求。通常采用黑盒測試技術(shù),但有時為了確保主要控制路徑的覆蓋測試,也會采用一定的白盒測試技術(shù)。

 ?、?軟硬件集成測試。軟硬件集成測試的目的是為了檢測系統(tǒng)劃分軟硬件功能后,在軟件集成測試完成的基礎(chǔ)上,測試模塊軟件在硬件平臺上的運行情況,主要是對嵌入式軟件的實時性、嵌入性及功能性能指標的測試。

 ?、?系統(tǒng)測試。關(guān)注所設(shè)計的系統(tǒng),在模塊與模塊集成之后構(gòu)成完整系統(tǒng)時所表現(xiàn)出的質(zhì)量指標,包括正確性、可擴性等。

 ?、?確認測試。針對確認標準的測試。確認標準由需求分析產(chǎn)生,所以實際上就是指規(guī)格化的需求,通常采用黑盒測試技術(shù)。

  2.2 軟硬件集成測試過程

  由圖1可以看到,軟硬件集成測試主要是在軟件集成測試完成后,形成獨立的配置項,加載到相應(yīng)的硬件平臺上進行測試,以確定軟硬件是否能夠協(xié)同工作,實現(xiàn)系統(tǒng)既定的功能。

  具體分為以下幾個步驟:

 ?、?系統(tǒng)測試組負責(zé)與系統(tǒng)工程組共同完成制定《軟硬件集成測試計劃》和《軟硬件集成測試計劃測試說明》的編寫。

 ?、?按軟件*審管理辦法,對《軟硬件集成測試計劃》和《軟硬件集成測試說明》進行同行*審。

  ③ 根據(jù)*審意見,對《軟硬件集成測試計劃》和《軟硬件集成測試說明》修改完善,履行審批手續(xù)后歸檔、入庫。

 ?、?系統(tǒng)測試組按《軟硬件集成測試計劃》、《軟硬件集成測試說明》,實施軟硬件集成測試。

 ?、?系統(tǒng)工程組組織軟件、硬件項目組協(xié)助確定和定位軟件中存在的缺陷和錯誤。

  ⑥ 軟件工程組對發(fā)現(xiàn)的軟件缺陷和錯誤進行確認和更改。

 ?、?測試人員對更改后的軟件配置項進行回歸測試。

 ?、?軟件設(shè)計人員將通過回歸測試的軟件入庫。

  ⑨ 測試人員編制測試報告。

  2.3 軟硬件集成測試模型

  綜上所述,嵌入式軟件的軟硬件集成測試過程主要是在需求規(guī)格說明完成的情況下,結(jié)合通用的標準、規(guī)范以及接口控制文件,與軟件設(shè)計同步,編寫軟硬件集成測試的《測試的計劃》和《測試的說明》,經(jīng)過*審后,把被測試軟件加載到目標機上運行,以檢測嵌入式軟件與硬件配合完成系統(tǒng)功能、性能的質(zhì)量。軟硬件集成測試模型如圖2所示。

  

 

  圖2 軟硬件集成測試模型[!--empirenews.page--]

  3 、 過程的可行性驗證

  為驗證上述過程的可行性及測試模型的有效性,某嵌入式軟件開發(fā)項目組在開發(fā)過程中按照此過程及模型進行了軟硬件集成測試。

  3.1 軟硬件集成測試硬件平臺

 ?、?目標機處理器:ARM核LPC2294單片機。

  ② 目標機外圍接口:ARINC429,RS422,離散量、模擬量等。

  ③ 目標機調(diào)試接口:JTAGH并口,RS232串口。

  ④ 宿主機調(diào)試環(huán)境:ADS1.2開發(fā)平臺。

  ⑤ 宿主機平臺:PC機(Windows XP系統(tǒng))、并口、RS232串口。

  3.2 軟硬件集成測試過程

 ?、?目標機上電、宿主機打開調(diào)試環(huán)境。

 ?、?加載經(jīng)過集成測試的嵌入式軟件到目標機,并啟動運行軟件。

 ?、?根據(jù)*審?fù)瓿傻臏y試說明及測試計劃進行軟硬件集成測試。

 ?、?根據(jù)測試結(jié)果編寫測試報告。

  3.3 測試

  結(jié)論根據(jù)上述測試過程測試完成的軟件,在交付使用后,至今只收到用戶的3份輕微級缺陷報告,比沒有經(jīng)過軟硬件集成測試即進行系統(tǒng)測試的軟件,質(zhì)量有較大提高,節(jié)省了大量的缺陷修正時間,提高了企業(yè)效益。

  4、結(jié)論

  軟硬件集成測試是保證嵌入式軟件質(zhì)量的關(guān)鍵一步,嵌入式軟件測試已成為目前嵌入式應(yīng)用領(lǐng)域的重要研究方向。從國內(nèi)外對嵌入式軟件測試的研究中,可以發(fā)現(xiàn)其大多著重關(guān)注嵌入式軟件的調(diào)試工作,而鮮見系統(tǒng)的對軟硬件集成測試的研究。隨著嵌入式軟件規(guī)模應(yīng)用的加大、質(zhì)量保證要求的提高,對嵌入式軟件的測試要求顯然已經(jīng)不能停留于僅僅通過調(diào)試就可以了,必然需要有更加全面的、系統(tǒng)化的測試過程。論文根據(jù)軟硬件集成測試方面的經(jīng)驗,總結(jié)提出了軟硬件集成測試的流程及模型,希望能夠?qū)?strong>嵌入式軟件測試的研究提供幫助。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉