當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]引言軟件質(zhì)量即業(yè)務(wù)生命。軟件測(cè)試項(xiàng)目已經(jīng)變得比以往任何時(shí)候都復(fù)雜和困難。1979年,Glenford Myers在《The Art of Software Testing》一書中提出“測(cè)試的目的是證偽

引言

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

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

根據(jù)筆者在嵌入式軟件測(cè)試工作過程中的經(jīng)驗(yàn),歸納提出了軟硬件集成測(cè)試過程,同時(shí)結(jié)合當(dāng)前軟件測(cè)試?yán)碚撉把刂R(shí),把該測(cè)試過程進(jìn)行重組和改進(jìn),并給出了測(cè)試模型,以期嵌入式軟件與硬件集成測(cè)試過程能夠在實(shí)際中廣泛應(yīng)用。

1 、嵌入式軟件測(cè)試基本概念

1.1 嵌入式軟件

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

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

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

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

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

1.2 測(cè)試用語(yǔ)

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

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

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

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

問題描述報(bào)告(Problem DescripTIon Report):對(duì)軟件測(cè)試過程中發(fā)現(xiàn)問題的簡(jiǎn)要描述。

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

 

2 、 軟硬件集成測(cè)試過程

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

2.1 嵌入式軟件測(cè)試過程

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

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

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

③ 系統(tǒng)軟件概要設(shè)計(jì)。

④ 系統(tǒng)軟件詳細(xì)設(shè)計(jì)。

⑤ 軟件編碼。

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

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

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

③ 軟硬件集成測(cè)試。軟硬件集成測(cè)試的目的是為了檢測(cè)系統(tǒng)劃分軟硬件功能后,在軟件集成測(cè)試完成的基礎(chǔ)上,測(cè)試模塊軟件在硬件平臺(tái)上的運(yùn)行情況,主要是對(duì)嵌入式軟件的實(shí)時(shí)性、嵌入性及功能性能指標(biāo)的測(cè)試。

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

⑤ 確認(rèn)測(cè)試。針對(duì)確認(rèn)標(biāo)準(zhǔn)的測(cè)試。確認(rèn)標(biāo)準(zhǔn)由需求分析產(chǎn)生,所以實(shí)際上就是指規(guī)格化的需求,通常采用黑盒測(cè)試技術(shù)。

2.2 軟硬件集成測(cè)試過程

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

具體分為以下幾個(gè)步驟:

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

② 按軟件*審管理辦法,對(duì)《軟硬件集成測(cè)試計(jì)劃》和《軟硬件集成測(cè)試說明》進(jìn)行同行*審。

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

④ 系統(tǒng)測(cè)試組按《軟硬件集成測(cè)試計(jì)劃》、《軟硬件集成測(cè)試說明》,實(shí)施軟硬件集成測(cè)試。

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

⑥ 軟件工程組對(duì)發(fā)現(xiàn)的軟件缺陷和錯(cuò)誤進(jìn)行確認(rèn)和更改。[!--empirenews.page--]

⑦ 測(cè)試人員對(duì)更改后的軟件配置項(xiàng)進(jìn)行回歸測(cè)試。

⑧ 軟件設(shè)計(jì)人員將通過回歸測(cè)試的軟件入庫(kù)。

⑨ 測(cè)試人員編制測(cè)試報(bào)告。

2.3 軟硬件集成測(cè)試模型

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

3 、 過程的可行性驗(yàn)證

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

3.1 軟硬件集成測(cè)試硬件平臺(tái)

① 目標(biāo)機(jī)處理器:ARM核LPC2294單片機(jī)。

② 目標(biāo)機(jī)外圍接口:ARINC429,RS422,離散量、模擬量等。

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

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

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

3.2 軟硬件集成測(cè)試過程

① 目標(biāo)機(jī)上電、宿主機(jī)打開調(diào)試環(huán)境。

② 加載經(jīng)過集成測(cè)試的嵌入式軟件到目標(biāo)機(jī),并啟動(dòng)運(yùn)行軟件。

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

④ 根據(jù)測(cè)試結(jié)果編寫測(cè)試報(bào)告。

3.3 測(cè)試

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

4、結(jié)論

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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