新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式系統(tǒng)的系統(tǒng)測試方法和可靠性評估

嵌入式系統(tǒng)的系統(tǒng)測試方法和可靠性評估

作者: 時間:2009-02-24 來源:網(wǎng)絡(luò) 收藏

引言

  隨著硬件體系結(jié)構(gòu)的變化,的發(fā)展趨勢向高端,即嵌入式軟件系統(tǒng)轉(zhuǎn)移,具體體現(xiàn)在嵌入式操作系統(tǒng)趨于多樣和應(yīng)用軟件日漸復(fù)雜。由于嵌入式系統(tǒng)軟硬件功能界限模糊,研究如何進行和進行質(zhì)量評估來保證嵌入式系統(tǒng)的產(chǎn)品質(zhì)量具有重要意義。

  首先,這里明確嵌入式系統(tǒng)的定義,是將開發(fā)的軟件系統(tǒng)(包括嵌入式操作系統(tǒng)和嵌入式應(yīng)用軟件)、硬件系統(tǒng)和其它相關(guān)因素(如人員的操作、數(shù)據(jù)的獲取等)綜合起來,對整個產(chǎn)品進行的全面測試。嵌入式系統(tǒng)的比PC系統(tǒng)要困難得多,主要體現(xiàn)如下:

 ?、?測試軟件功能依賴不需編碼的硬件功能,快速定位軟硬件錯誤困難;

 ?、?強壯性測試、可知性測試很難編碼實現(xiàn);

 ?、?交叉測試平臺的測試用例、測試結(jié)果上載困難;

 ?、?基于消息系統(tǒng)測試的復(fù)雜性,包括線程、任務(wù)、子系統(tǒng)之間的交互,并發(fā)、容錯和對時間的要求;

 ?、?性能測試、確定性能瓶頸困難;

  ⑥ 實施測試自動化技術(shù)困難。

  1、測試方法

  根據(jù)Goodenough和Gerhart提出的充分性準則可知,具有非復(fù)合性的特點,也就是說,即使以軟件所有成分都進行了 充分的測試,也并不意味著整個軟件的測試已經(jīng)充分。所以,即使通過了需求測試、設(shè)計測試、編碼測試,并不意味著已經(jīng)完全了充分的測試,還要進行軟硬件全面 測試,即系統(tǒng)測試。正確的系統(tǒng)測試方法能設(shè)計出良好的測試事例,而良好的測試事例是測試成功的關(guān)鍵。測試事例質(zhì)量特性主要有以下幾點。

  • 檢驗性:檢測軟件缺陷的有效性,是否能發(fā)現(xiàn)缺陷或至少可能發(fā)現(xiàn)缺陷。
  • 可仿效性:可以支持測試多項內(nèi)容,減少測試事例的數(shù)量。
  • 開銷:測試事例的執(zhí)行、分析和調(diào)試是否經(jīng)濟。
  • 修改性:每次軟件修改后對測試事例的維護成本。

  測試方法不僅要保證測試事例具有發(fā)現(xiàn)缺陷的高可移植性,而且還要保證測試事例設(shè)計的經(jīng)濟有效。因此,在實際測試工作中,將嵌入式系統(tǒng)的測試方法 分類如下:根據(jù)測試是否動態(tài)運行被測程序分為靜態(tài)測試方法和動態(tài)測試方法;根據(jù)測試階段分為需求測試方法、設(shè)計測試方法、編碼測試(單元測試、集成測試) 方法及系統(tǒng)測試方法;根據(jù)測試目的分為功能測試、性能測試、可靠性測試(容錯性、可恢復(fù)性、成熟度測試*及信息安全保護等測試。參看表1嵌入式軟件測試方 法對照。其中“√”代表相關(guān)性。所有這些方法的具體定義這里不一一介紹。由于不同的嵌入式系統(tǒng)面向的應(yīng)用不同,測試方法的側(cè)重也很不相同。本文后面將對一 個具體的便攜式信息處理嵌入式系統(tǒng)(PDA、便攜式翰林電子書)的系統(tǒng)測試方法詳細說明。

表1 嵌入式軟件測試方法及階段對照表

  2、

  可靠性是嵌入式系統(tǒng)最重要的質(zhì)量指標。國示質(zhì)量標準(ISO/IEC 9126-1991)規(guī)定,軟件產(chǎn)品的可靠性含義是:在規(guī)定的一段時間和條件下,軟件能維持其性能水平的能力有關(guān)的一組屬性,可用成熟性、容錯性、易恢復(fù) 性三個基本子特性來度量。根據(jù)我們在評估嵌入式系統(tǒng)中的成功經(jīng)驗,一般采取以下簡單有效的評估方法(可以采用百分制或十分制)。

  (1)成熟性度量

  ① 錯誤發(fā)現(xiàn)率DDP(Defect Detection Percentage)。在測試中查找出來的錯誤越多,實際應(yīng)用中出錯的機會就越小,軟件也就越成熟。

  DDP=測試發(fā)現(xiàn)的錯誤數(shù)量/已知的全部錯誤數(shù)量

  已知的全部錯誤數(shù)量是測試已發(fā)現(xiàn)的錯誤數(shù)量加上可能會發(fā)現(xiàn)的錯誤數(shù)量之和。

 ?、?測試覆蓋率度量。測試的覆蓋率,可以用測試項目的數(shù)量和內(nèi)容進行度量。除此之外,如果測試軟件的數(shù)量較大,還要考慮數(shù)據(jù)量。測試的覆蓋率,可以根據(jù)表2所示在測試指標進行評價。通過檢查這些指標達到的程度,就可以度量出測試內(nèi)容的覆蓋程度。

表2 測試覆蓋程度表

測試覆蓋程度表

  注意,對于最大值與最小值的差值超過5的情況,應(yīng)該重新測試響應(yīng)功能。

  (2)容錯性評估

  容錯性評估分為控制容錯性評估、數(shù)據(jù)容錯性評估、硬件故障恢復(fù)容錯性評估:

  容錯性=以下各條款評分之和÷條款數(shù)

  控制容錯性度量

  ① 對并發(fā)處理的控制能力;

 ?、?錯誤的可修正性和處理可繼續(xù)進行能力。

  數(shù)據(jù)容錯性度量

 ?、?非法輸入數(shù)據(jù)的容錯;

 ?、?對相互沖突的要求和非法組合容錯;

  ③ 輸出數(shù)據(jù)是否合理容錯。

  硬件故障中恢復(fù)容錯性度量

  故障后恢復(fù)能力容錯。

  (3)易恢復(fù)性度量

  與易恢復(fù)性緊密相關(guān)的測試是強度測試和健壯測試。強度測試又稱為力度測或極限測試,主要測試系統(tǒng)對空間強度和時間強度的容忍極限;健壯測試又稱異常測試,是很重要的可靠性測試項目。通過易恢復(fù)性測試,一方面使系統(tǒng)具有異常情況的抵抗能力,另一方面使系統(tǒng)測試質(zhì)量可控制。

  易恢復(fù)性=以下各條款評分之和÷條款數(shù)

  ① 空間強度可恢復(fù);

  ② 時間強度可恢復(fù);

 ?、?數(shù)據(jù)強度可恢復(fù);

  ④ 異常通信可恢復(fù);

 ?、?數(shù)據(jù)破壞可恢復(fù);

 ?、?電池極限可恢復(fù)。

(4)測試可信度評估

  測試可信度是對測試質(zhì)量的有效評估,是保證質(zhì)量的必要步驟。目前雖然很難有量化的指標,但我們采取積分的方式顯示可信度。例如,請4個人員(甲、乙、丙、?。ο到y(tǒng)5個功能打一個從0(不信任)到10(完全信任)之間的分數(shù),那么,可信度度量可以用表3進行計算。

表3 可信度測試表

  3、測試實例

 ?。?)電流測試

  電流測試是嵌入式系統(tǒng)的系統(tǒng)測試中首先要進行的重要測試,也是最容易被忽視的測試。主要是測試系統(tǒng)的工作電流、待機電流。人們一般把它當成與系 統(tǒng)測試無關(guān)的硬件測試。但是對于嵌入式系統(tǒng),軟件與硬件不可能清晰地劃分,硬件的性能直接影響軟件的運行。實例1說明了電流測試對系統(tǒng)運行的影響及不可替 代的作用。

  測試現(xiàn)象描述:進行同一廠商PDA系統(tǒng)測試,有幾臺PDA在名片子系統(tǒng)、行程子程序的操作過程中隨機死機。

  我們當時的錯誤分析定位是:①懷疑操作系統(tǒng)中斷處理錯誤;②懷疑內(nèi)存泄漏,堆棧溢出;③懷疑應(yīng)用程序錯誤。

  在軟件開發(fā)人員為解決這個問題檢查軟件時,硬件開發(fā)人員提出應(yīng)首先測試一下這幾臺機器的工作電流。結(jié)果發(fā)現(xiàn),PDA的工作電流低于正常工作電流。加電容調(diào)整后隨機死機問題消失。

  由此例還可以看出,嵌入式系統(tǒng)測試的軟硬件測試不可分性。絕對的將硬件測試和軟件測試區(qū)分開來的測試思想是不正確的。我們在系統(tǒng)測試時的電流測試設(shè)計如表4。

表4 電流測試

  (2)兼容性測試

  考慮到嵌放式系統(tǒng)軟硬件的開發(fā)成本高于通用PC系統(tǒng),因此,提高軟件對硬件的兼容及軟件升級版本的兼容性極為重要。表5是便攜林翰林電子書升級版本兼容性測試實例。

表5 兼容性測試

  實例2:現(xiàn)在的嵌入式系統(tǒng)的層次結(jié)構(gòu)一般分為硬件層、BIOS層、操作系統(tǒng)層、應(yīng)用系統(tǒng)層。有的還需要通用PC應(yīng)用軟件支持。因此,嵌入式系統(tǒng)的兼容性測試要考慮硬件兼容性、BIOS兼容性、操作系統(tǒng)兼容性,還需考慮與相應(yīng)PC應(yīng)用軟件的兼容性。

  結(jié)語

  本文的測試方法和評估方法在具體的嵌入式系統(tǒng)測試中,獲得很好的效果。這是一項很有意義的工作,不僅要求嵌入式系統(tǒng) 的測試人員具有很全面的軟硬件知識,還需結(jié)合測試理論、統(tǒng)計方法,面對不同的系統(tǒng)進行測試方法、工具、過程評價及質(zhì)量評估。隨著嵌入式系統(tǒng)的多樣性和復(fù)雜 性發(fā)展,嵌入式系統(tǒng)的系統(tǒng)測試研究將繼續(xù)深入。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉