彭 琿,張曉娜,張 翔,李曉利
(復雜電磁環境效應國家重點實驗室,河南 洛陽 471003)
傳統的機載顯示器嵌入式軟件測試方法是一個型號研制一套專用的測試設備和配套的測試軟件。當型號越來越多時,就需要越來越多的適用于不同型號的測試設備,而且不同測試設備研發由于技術繼承性較弱而導致成本難以降低,同時還需要開發多套不同的測試軟件。對測試人員而言,還必須花時間熟練掌握各種測試設備和測試軟件,學習成本和時間成本成倍增加。
面對上述問題,國內外從事機載顯示器嵌入式軟件開發與測試的研究人員,一直在研究設計一套基于接口的嵌入式軟件通用測試方案。本文研究了嵌入式軟件測試環境通用開發平臺ETest的架構,設計實現了針對1553B總線接口測試的半實物仿真測試環境。
為了滿足嵌入式系統測試實時性要求,嵌入式系統測試環境開發平臺ETest采用主流的上下位機架構,如圖1所示。

圖1 ETest體系架構圖
測試主機上的軟件主要完成測試設計、測試監控與分析等;實時處理機上的軟件主要完成測試運行。ETest的主要軟件包括測試設計軟件、測試執行服務軟件、測試執行客戶端軟件、設備資源管理軟件以及測試輔助軟件工具包等。
其設計目標主要包括:
(1)支持對測評任務的管理,可以進行圖形化建模,支持仿真模型的開發、調試、編譯和下載等,可以根據需要加載數據源文件,并進行測試腳本的設計和實現;
(2)提供測試運行所需的軟件資源,實現仿真模型的加載和運行、測試腳本的執行、測試數據的接收和發送、測評任務的調度等;
(3)不但可以使用多種控件實時查看測試狀態及被測系統收發的數據,還可以實時發送在線腳本,同時能對軟件測試中產生的測試數據進行事后分析。
為了開展對機載顯示器嵌入式軟件的全面測試,需要在ETest測試主機上仿真模擬外圍的各種接口設備和傳感器的信息交換過程,同時利用集成在實時處理機上的各種接口卡,模擬產生這些接口設備和傳感器的物理信號,并與被測件進行交互,驅動被測件內部嵌入式軟件的運行。測試主機通過實時處理機控制操作這些模擬設備,發出指令到被測試的機載顯示器,并接收被測機載顯示器的反饋指令。
基于1553B總線的機載顯示器嵌入式軟件測試環境如圖2所示。

圖2 基于1553B總線的機載顯示器嵌入式軟件測試環境
在軟件平臺方面,ETest設計實現了通用的測試環境,主要包括測試主機和實時處理機。測試主機軟件主要包括測試任務管理、仿真模型設計、數據源加載、測試腳本設計和實現等主要模塊;實時處理機軟件主要包括測試運行控制、測試腳本解釋、實時數據處理、接口驅動等主要功能模塊;測試監控軟件主要實現測試監控、測試數據收集、測試結果分析、在線腳本發送等功能。
測試前,進行測試任務的管理、交聯環境模型的建立、數據源模型的加載、測試腳本的編寫、顯示面板的構建、收集數據的定制;測試中,進行測試運行控制、實時數據處理、數據收集、測試監控、在線腳本發送、測試腳本解釋等;測試后,進行測試結果分析、數據回放和圖形化分析。
測試交聯環境設計就是在測試主機上利用測試設計軟件建立被測設備外圍交聯環境,主要進行外圍交聯設備的仿真、接口協議和仿真通道的配置、仿真通道和物理通道的映射等?;?553B總線的機載顯示器的測試交聯環境建模如圖3所示。

圖3 基于1553B總線的機載顯示器嵌入式軟件測試交聯環境
ETest提供數據協議描述語言DPD描述應用層協議。協議由字段組成,字段提供了位、字節、字符串、數組、校驗等多種類型。應用層協議由接口控制文件詳細描述,每一個具體項目都會制定特定的接口控制文件。
圖形監控設計是用來在用例執行的輸入用例數據和顯示測試結果數據的。監控種類常用的有按鈕、開關、bull燈、文本編輯框、儀表盤、數字表、曲線圖等。
腳本設計就是用例設計,以實現自動化測試。腳本采用Python語言編寫。在腳本中直接引用協議字段,進行賦值等操作;直接用ETest提供的協議讀寫API,實現協議的自動組包和解包操作。腳本可進行輸入輸出信息的打印輸出,可以打開并執行監控。
完成測試準備后,在上位機上啟動測試,實時處理機運行實時測試用例并向上位機反饋測試數據。本文中,共模擬了機載顯示器設備的1553B、AD、DA、DI、DO、視頻、電源接口等多種接口,模擬了與機載顯示器設備有信息/信號交互關系的計算機、開關量、程控電源、數字視頻模塊、模擬視頻模塊、模擬量和非標設備、串口設備等多種外部設備,總共完成了14種接口協議的正常、異常、邊界測試,發現被測機載顯示器嵌入式軟件設計缺陷3個、內存溢出缺陷2個,有效提高了被測試機載顯示器的穩定性可靠性。
本文深入分析了利用ETest構建機載顯示器嵌入式軟件測試環境的關鍵技術問題。通過執行機載1553B總線顯示器嵌入式軟件的測試結果表明,本研究設計的ETest可用于開發基于不同類型接口的嵌入式軟件測試,實現對被測件實時、動態、閉環、非侵入式的自動化測試。