1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      嵌入式系統的系統測試和可靠性評估

      更新時間: 2006-05-30 14:50:25來源: 粵嵌教育瀏覽量:804

        引言

      隨著嵌入式系統硬件體系結構的變化,嵌入式系統的發展趨勢向嵌入式系統高端,即嵌入式軟件系統轉移,具體體現在嵌入式操作系統趨于多樣和應用軟件日漸復雜。由于嵌入式系統軟硬件功能界限模糊,研究如何進行系統測試和進行質量評估來保證嵌入式系統的產品質量具有重要意義。

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

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

      ②強壯性測試、可知性測試很難編碼實現;

      ③交叉測試平臺的測試用例、測試結果上載困難;

      ④基于消息系統測試的復雜性,包括線程、任務、子系統之間的交互,并發、容錯和對時間的要求;

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

      ⑥實施測試自動化技術困難。

        1 測試方法

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

      *檢驗性:檢測軟件缺陷的有效性,是否能發現缺陷或至少可能發現缺陷。

      *可仿效性:可以支持測試多項內容,減少測試事例的數量。

      *開銷:測試事例的執行、分析和調試是否經濟。

      *修改性:每次軟件修改后對測試事例的維護成本。

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

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

      測試方法分類

      需求測試 設計測試 編碼測試 系統測試
      靜態測試方式; 基本思想
      Yourdon的結構化走通 結構化審閱  
      Fagan檢查測試 檢查并評估  
      動態測試方法; 基本思想  
      控制流測試 語句測試    
      路徑測試      
      條件測試      
      數據流測試 數據定義引用    
      分域測試 劃分子域測試  
      功能測試 劃分功能測試    
      隨機測試 不限定范圍      

        2 可靠性評估

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

      (1)成熟性度量

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

      DDP=測試發現的錯誤數量/已知的全部錯誤數量

      已知的全部錯誤數量是測試已發現的錯誤數量加上可能會發現的錯誤數量之和。

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

        表2 測試覆蓋程度表

      測試覆蓋項 測試覆蓋率指標測試描述 測試結果
      界面覆蓋 符合需求(所有界面圖標、信息區、狀態區)  
      靜態功能覆蓋 功能滿足需求  
      動態功能覆蓋 所有功能的轉換功能正確  
      正常測試覆蓋 所有硬件軟件正常時處理  
      異常測試覆蓋 硬件或軟件異常時處理(不允許的操作) 測試結束判斷

        表3 可信度測試表

      測試功能 平均 值-小值
      功能1            
      功能2            
      功能3            
      功能4            
      功能5            

      注意,對于值與小值的差值超過5的情況,應該重新測試響應功能。

      (2)容錯性評估

      容錯性評估分為控制容錯性評估、數據容錯性評估、硬件故障恢復容錯性評估:

      容錯性=以下各條款評分之和÷條款數

      控制容錯性度量

      ①對并發處理的控制能力;

      ②錯誤的可修正性和處理可繼續進行能力。

      數據容錯性度量

      ①非法輸入數據的容錯;

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

      ③輸出數據是否合理容錯。

      硬件故障中恢復容錯性度量

      故障后恢復能力容錯。

      (3)易恢復性度量

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

      易恢復性=以下各條款評分之和÷條款數

      ①空間強度可恢復;

      ②時間強度可恢復;

      ③數據強度可恢復;

      ④異常通信可恢復;

      ⑤數據破壞可恢復;

      ⑥電池極限可恢復。

      (4)測試可信度評估

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

        3 測試實例

      (1)電流測試

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

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

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

      在軟件開發人員為解決這個問題檢查軟件時,硬件開發人員提出應首先測試一下這幾臺機器的工作電流。結果發現,PDA的工作電流低于正常工作電流。加電容調整后隨機死機問題消失。

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

        表4 電流測試

      測試電流項目 測試結果(不同的產品對電流要求不同) 備  注
      預期值 實測值
      待機電流/mA     關機后電流測試
      啟動電流/mA     開機瞬間電流測試
      工作電流/mA     正常工作電流測試

      (2)兼容性測試

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

        表5 兼容性測試

      兼容性測試分類

      硬件兼容性 操作系統兼容性 應用軟件兼容性 PC制書軟件兼容性
      BIOS兼容測試        
      BIOSV1.0        
      BIOSV2.0        
      操作系統兼容測試        
      VOLF V.1.0        
      VOLF V.2.0        
      應用軟件兼容測試        
      READER V.1.0        
      READER V.2.0        
      PC制書軟件兼容測試        
      PCREADRE V1.        
      PCREADER V2.        

      實例2:現在的嵌入式系統的層次結構一般分為硬件層、BIOS層、操作系統層、應用系統層。有的還需要通用PC應用軟件支持。因此,嵌入式系統的兼容性測試要考慮硬件兼容性、BIOS兼容性、操作系統兼容性,還需考慮與相應PC應用軟件的兼容性。

        結語

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

      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 五月定向久久可爱视频 | 尹人香蕉久久99天天拍 | 亚洲日韩精品一区粉嫩 | 亚洲欧美日韩国产综合网 | 自拍亚洲一区欧美另类 | 日本精品久久久久一区二区三区 |