嵌入式軟件技術(shù)軟件測(cè)試策略和方案設(shè)計(jì) —— 文章正文2015-05-25
安防網(wǎng)訊 軟硬件結(jié)合的嵌入式系統(tǒng)正越來(lái)越多地應(yīng)用到我們常見的儀器設(shè)備中,嵌入式領(lǐng)域目標(biāo)系統(tǒng)的應(yīng)用系統(tǒng)也日趨復(fù)雜,開發(fā)技術(shù)日新月異。同時(shí),隨著硬件技術(shù)發(fā)展的日趨穩(wěn)定,而軟件故障卻日益突顯,由此軟件的重要性已逐漸引起人們的重視,越來(lái)越多的研究人員認(rèn)識(shí)到嵌入式系統(tǒng),優(yōu)化其測(cè)試技術(shù)已勢(shì)在必行,研究出合適的嵌入式軟件系統(tǒng)測(cè)試方法,正是本課題的意義所在。
嵌入式系統(tǒng)介紹及軟件特點(diǎn)
嵌入式系統(tǒng)簡(jiǎn)介
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),并且軟硬件可裁剪,是專為應(yīng)用系統(tǒng)量身打造、是對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用的計(jì)算機(jī)系統(tǒng)。
嵌入式系統(tǒng)一般指非PC類標(biāo)配系統(tǒng),它也包括硬件和軟件兩部分。硬件包括處理器/微處理器、存儲(chǔ)器及外設(shè)器件和I/O端口、圖形控制器等。軟件部分包括操作系統(tǒng)軟件(OS)(要求實(shí)時(shí)和多任務(wù)操作)和應(yīng)用程序。有時(shí)設(shè)計(jì)人員把這兩種軟件組合在一起。應(yīng)用程序控制著系統(tǒng)的運(yùn)作和行為,而操作系統(tǒng)控制著應(yīng)用程序編程與硬件的交互作用。
嵌入式系統(tǒng)軟件特點(diǎn)分析
嵌入式系統(tǒng)開發(fā)有其自身的特點(diǎn)。一般先進(jìn)行硬件部分的開發(fā),主要包括形成裸機(jī)平臺(tái),根據(jù)需要移植實(shí)時(shí)操作系統(tǒng),開發(fā)底層的硬件驅(qū)動(dòng)程序等。硬件平臺(tái)測(cè)試通過(guò)后,應(yīng)用軟件的開發(fā)調(diào)試是基于該硬件平臺(tái)進(jìn)行的,這同時(shí)也是對(duì)硬件平臺(tái)的一個(gè)測(cè)試。
嵌入式系統(tǒng)的開發(fā)過(guò)程是一個(gè)軟硬件互相協(xié)調(diào),互相反饋和互相測(cè)試的過(guò)程。一般來(lái)說(shuō),在嵌入式系統(tǒng)軟件中,底層驅(qū)動(dòng)程序、操作系統(tǒng)和應(yīng)用程序的界面是不清晰的,根據(jù)需要甚至混編在一起。這主要是由于嵌入式系統(tǒng)中軟件對(duì)硬件的依賴性造成的?;谇度胧杰浖?duì)硬件的依賴性,其要求軟件測(cè)試時(shí)必須最大限度地模擬被測(cè)軟件的實(shí)際運(yùn)行環(huán)境,以保證測(cè)試的可靠性,而底層程序和應(yīng)用程序界限的不清晰又增加了測(cè)試的難度。測(cè)試時(shí)只有確認(rèn)嵌入式系統(tǒng)平臺(tái)及底層程序是正確的情況下才能進(jìn)行應(yīng)用程序的測(cè)試,而且在系統(tǒng)測(cè)試時(shí),錯(cuò)誤的定位較為困難。
軟件的專用性也是嵌入式軟件的一個(gè)重要特點(diǎn)。由于嵌入式軟件設(shè)計(jì)是以一定的目標(biāo)硬件平臺(tái)為基礎(chǔ)的,面向固定的任務(wù)進(jìn)行的,因此,一旦被加載到目標(biāo)系統(tǒng)上,功能必須完全確定。這個(gè)特點(diǎn)決定了嵌入式應(yīng)用軟件的繼承性較差,也延長(zhǎng)系統(tǒng)的測(cè)試時(shí)間和增加了測(cè)試費(fèi)用。
嵌入式軟件的另外一個(gè)重要特點(diǎn)就是實(shí)時(shí)性。這是基于軟件的執(zhí)行角度而言的,也就是說(shuō)嵌入式軟件的執(zhí)行要滿足一定的時(shí)間約束。嵌入式系統(tǒng)中,應(yīng)用軟件自身算法的復(fù)雜度和操作系統(tǒng)任務(wù)調(diào)度,決定了系統(tǒng)資源的分配和消耗。因此,對(duì)系統(tǒng)實(shí)時(shí)性進(jìn)行測(cè)試時(shí),要借助一定的測(cè)試工具對(duì)應(yīng)用程序算法復(fù)雜度和操作系統(tǒng)任務(wù)調(diào)度進(jìn)行分析測(cè)試??梢娗度胧杰浖c傳統(tǒng)的面向?qū)ο蠛兔嫦蜻^(guò)程的軟件相比有其自身的特點(diǎn)。所以嵌入式軟件的開發(fā)和測(cè)試也就與一般商用軟件的開發(fā)和測(cè)試策略有了很大的不同,可以說(shuō)嵌入式軟件是最難測(cè)試的一種軟件。針對(duì)這些特點(diǎn)對(duì)嵌入式軟件的測(cè)試進(jìn)行研究是必要的和有意義的。
嵌入式軟件測(cè)試
軟件測(cè)試是軟件質(zhì)量保證的關(guān)鍵因素,代表了規(guī)約、設(shè)計(jì)和編碼的最終檢查。是從經(jīng)濟(jì)、效率的角度出發(fā),對(duì)軟件代碼進(jìn)行質(zhì)量、正確性保證的一個(gè)過(guò)程。軟件測(cè)試是軟件開發(fā)中的一個(gè)重要環(huán)節(jié),也是軟件從開發(fā)過(guò)程到應(yīng)用過(guò)程的關(guān)鍵一環(huán),嵌入式軟件也不例外。
嵌入式軟件測(cè)試策略和方案設(shè)計(jì)
討論嵌入式軟件測(cè)試首先就會(huì)遇到一個(gè)問(wèn)題:為什么不把所有測(cè)試都放在目標(biāo)上進(jìn)行呢?因?yàn)槿羲袦y(cè)試都放在目標(biāo)平臺(tái)上有很多不利的因素:
可能會(huì)造成與目標(biāo)環(huán)境開發(fā)者爭(zhēng)奪時(shí)間的瓶頸,避免提供更多的目標(biāo)環(huán)境;
目標(biāo)環(huán)境可能還不可行;
比起主機(jī)平臺(tái)環(huán)境,目標(biāo)環(huán)境通常是不精密的和不方便的;
提供給開發(fā)者的目標(biāo)環(huán)境和開發(fā)環(huán)境通常是很昂貴的;
開發(fā)和測(cè)試工作可能會(huì)妨礙目標(biāo)環(huán)境已存在持續(xù)的應(yīng)用。
確定目標(biāo)主機(jī)(host-target)測(cè)試環(huán)境后,開發(fā)測(cè)試人員又會(huì)遇到以下的問(wèn)題:
1)多少開發(fā)人員會(huì)進(jìn)行測(cè)試工作?
2)多少軟件應(yīng)該測(cè)試,測(cè)試會(huì)花費(fèi)多長(zhǎng)時(shí)間?
3)主機(jī)環(huán)境和目標(biāo)環(huán)境有哪些軟件工具,價(jià)格怎樣?
4)多少目標(biāo)環(huán)境可以提供給開發(fā)者?
5)主機(jī)和目標(biāo)主機(jī)之間的連接怎樣?
6)被測(cè)軟件下載到目標(biāo)主機(jī)有多快?
7)使用主機(jī)與目標(biāo)環(huán)境之間有什么限制?
進(jìn)行嵌入式軟件的測(cè)試都應(yīng)深入考慮以上問(wèn)題,結(jié)合自身實(shí)際情況,選定合理測(cè)試策略和方案。
嵌入式軟件測(cè)試流程及方法
根據(jù)不同的指標(biāo),軟件測(cè)試有不同的劃分方法。
從軟件開發(fā)過(guò)程中測(cè)試所處的不同階段可分為模塊測(cè)試、集成測(cè)試和系統(tǒng)測(cè)試;根據(jù)是否需要運(yùn)行目標(biāo)代碼又可分為動(dòng)態(tài)測(cè)試和靜態(tài)測(cè)試;根據(jù)目標(biāo)代碼的可見性還可分為白盒測(cè)試(結(jié)構(gòu)測(cè)試)和黑盒測(cè)試(功能測(cè)試)。
在軟件測(cè)試中,每種測(cè)試方法都不是孤立的。為了最經(jīng)濟(jì)最有效地達(dá)到測(cè)試的目的,各種測(cè)試方法往往是互相嵌套的。例如,在軟件的單元測(cè)試階段,可以用黑盒測(cè)試和白盒測(cè)試的方法分別進(jìn)行動(dòng)態(tài)測(cè)試。
近年來(lái),在軟件測(cè)試中,測(cè)試代碼的覆蓋率逐漸成為軟件測(cè)試的統(tǒng)一標(biāo)準(zhǔn),因此不管采用何種測(cè)試方法,盡可能地提高軟件測(cè)試中的代碼覆蓋率是必需的。軟件測(cè)試代碼覆蓋率是基于白盒測(cè)試方法的,因此,為了提高軟件測(cè)試的代碼覆蓋率,測(cè)試人員必須清楚源代碼的結(jié)構(gòu),擁有程序設(shè)計(jì)文檔,以便設(shè)計(jì)測(cè)試用例,使測(cè)試盡可能地覆蓋程序內(nèi)部結(jié)構(gòu)的每條語(yǔ)句,提高代碼的覆蓋率。
嵌入式軟件測(cè)試流程
根據(jù)嵌入式系統(tǒng)的開發(fā)流程,為了最經(jīng)濟(jì)地實(shí)現(xiàn)系統(tǒng)的功能,采用自頂向下、層層推進(jìn)的方法對(duì)嵌入式系統(tǒng)進(jìn)行測(cè)試,采用如下圖所示的測(cè)試流程。
平臺(tái)測(cè)試:這部分包括硬件電路測(cè)試、操作系統(tǒng)及底層驅(qū)動(dòng)程序測(cè)試等。
(責(zé)任編輯: 來(lái)源: 時(shí)間:2015-05-25)
Keywords(關(guān)鍵詞): 長(zhǎng)距離皮帶托輥傳輸機(jī)
上一篇:全球同見證 柳工銳斯塔(DRESSTA)全系列產(chǎn)品秀(圖)
下一篇:拯救酒店業(yè)頹勢(shì)新出路:酒店智能化升級(jí)


