張蕾 周敏剛


摘 要:搭建高逼真度的仿真環境,對無線電高度表軟件的功能和性能指標進行考核驗證,設計無線電高度表功能的測試用例,通過軟件測試發現功能缺陷和軟件隱患。可提高軟件配置項和系統測試的效率,有利于配置模擬不同故障模態、提高測試的充分性和有效性。
關鍵詞:無線電高度表;配置項測試;仿真環境
無線電高度表,測量飛機到地面垂直距離的重要機載設備,它測量的高度是飛機距離地面的真是高度、它能在各種氣候條件下精確測量飛機距離地面或海面的相對高度,高度探測能力是無線電高度表的主要能力,通常指無線電高度表探測范圍和精度。
無線電高度表采取軟件與硬件相結合的開發方式,系統的主要功能實現都在軟件功能模塊中。軟件測評是從不同角度,用不同方法,對系統指標要求進行考核驗證,本文提出基于仿真環境的軟件測試方法,研究同一系列無線電高度表軟件探測能力指標測試方法,通過軟件測試發現系統缺陷和軟件隱患。
1 測試對象分析
以某無線電高度表軟件作為測試對象開展測試方法研究。駐留在無線電高度表接口板CPU上的高度表軟件,將從高度表時間/數碼板讀取來的15位并行碼高度數字信號分別轉換為1553B串行數字信號和RS-422串行數字信號,并響應1553B總線命令。響應的命令包括環繞命令、非法命令及十種方式命令(不帶字同步、帶字同步、發送狀態字、啟動自檢、取自檢結果、發送器關閉、取消發送器關閉、復位遠程終端、發送矢量字、發送上一命令)。
另外,還根據高度信息,控制高度表三路跳閘信號。該高度表的高度數據分辨率為0.5米,1553B總線高度數據刷新周期為50ms。高度表軟件的結構如圖1所示。
此軟件要控制接口板實現下述功能:
1)經GJB289A-97多路數據總線(以下簡稱1553B總線)以數字形式輸出高度測量數據和其它數字數據信息;
2)經RS-422接口以數字形式輸出高度測量數據;
3)經離散線送出3路跳閘信號;
4)實現高度表加電自檢和啟動自檢的功能。
高度表軟件包含1個主程序和2個中斷程序:主程序包括芯片初始化、自檢、讀取時間數碼板送來的并行高度信息進行數據處理、根據高度信息控制高度表產生3路跳閘信號;中斷程序包括1553B中斷、RS-422中斷。
2 測試環境建立
測試環境由無線電高度表、總線控制(BC)仿真環境和高度表綜合檢測儀構成。利用檢測儀為高度表提供各種模態的高度數據和供電,并且利用檢測儀檢測驗證高度表的422信號輸出和跳閘信號輸出,利用BC仿真環境產生模擬1553B總線命令和檢測相應高度表的1553B輸出信號。
測試環境總體部署如圖2所示。
3 測試方法說明
基于模擬環境的軟件測試方法,采用功能分解法,按照無線電高度表功能和使用,制定測試項目和內容。設計測試用例。以模擬數據驅動無線電高度表軟件運行,對軟件進行功能和模態測試。
3.1 測試環境的差異性分析和有效性
BC仿真環境安裝在一臺PC機上,用微機串口232與高度表(安裝接口板)連接,通過模擬總線控制器BC向高度表接口板發送1553B總線命令,使高度表軟件響應命令請求,完成1553B信號輸出,并將輸出結果返回PC機顯示。高度表綜合檢測儀用電纜與高度表(安裝接口板)連接,通過模擬高度表接口板的外部接口,包括模擬輸入高度數據的接口、RS-422串行通訊(輸出高度數據)接口、以及顯示跳閘信號接口,向高度表接口板輸入信號激勵高度表軟件運行,對其進行綜合測試,并將運行結果通過這些接口回送給檢測儀,供測試人員分析高度表軟件運行的正確性。
高度表軟件測試環境的輸入和輸出使用方法為:從高度表綜合檢測儀中輸入高度數據值(十進制),并通過BC仿真環境模擬發送1553B總線命令;在高度表綜合檢測儀中觀察RS-422串行通訊口輸出(十進制)的高度數據值和顯示的跳閘信號,以及PC機中顯示的1553B信號輸出(十六進制)結果是否同預期結果一致。
3.2 軟件測試的原則
軟件測試的目的是找到潛伏在軟件中的錯誤,以保證和提高軟件的質量。要想找出軟件中的所有缺陷,確保軟件完美無缺,是一種理想狀態,選擇合理的測試集就存在著一定的風險。測試過程中必須做好測試集選取和風險識別工作。
3.3 測試模態的選取
3.3.1響應十種方式命令
初始化PC機內1553B仿真卡,按照指定協議配置總線表、模擬機上BC功能,按照總線通通信協議向無線電高度表發送總線命令,分別測試高度表軟件對十種不同命令響應功能是否正確;分別是“不帶字同步”、 “啟動自測試”、“復位遠程終端”、“發送器關閉”、“發送狀態字”、“取消發送器關閉”、“發送矢量字”、“帶數據字的同步方式命令”、“發送上一命令”和“發送自檢測字”方式命令。
3.3.2自檢功能
通過高度表檢測儀模擬不同情況的加電自檢工況,分別選取以下測試點:高度表正常時加電自檢、高度表故障時(高度值設為15m、64m)加電自檢、高度表正常時周期自檢、高度表故障時(高度值設為15m、64m)周期自檢、高度表正常時啟動自檢、高度表故障時(高度值設為15m、64m)啟動自檢。
3.3.3經1553B總線周期輸出高度數據
通過BC仿真器接收高度表不同狀態下的周期測高狀態、 數據處理、中斷處理。分別設置以下測試點: 24m、768m、1000m、1500m、1800m、2000m、4096m、無效模擬高度數據、0m、6000m。
3.3.4經RS-422接口輸出高度數據
通過高度表檢測儀的RS422接口接收高度表不同狀態下的周期測高狀態、 數據處理、中斷處理。分別設置以下測試點: 24m、768m、1000m、1500m、1800m、2000m、4096m、無效模擬高度數據、0m、6000m。
3.3.5跳閘功能
通過高度表檢測儀經離散線接口接收高度表送出3路跳閘信號,分別設置以下測試點: 20m、50m、170m、2300m、無效模擬高度數據、30m、60m、200m。
3.3.6余量測試
測試滿負荷情況下高度表內數據存儲占用空間的數據,實測占用空間為5.61KB,滿足占用空間余量≥20%要求。
3.3.7強度測試
檢測判斷高度表周期自檢時間,要求50ms±2ms秒,測量5次周期控制時間均為50ms。加電自檢時間要求是1分鐘內成,實際測量5次時間分別為45s、47s、45s、48s、48s。
3.4 測試充分性分析
基于模擬環境的配置項級測試在測試需求分析階段,測試方依據軟件需求規格說明和測試人員識別的隱含需求,歸納出高度表軟件配置項級測試項7項。測試設計與實現階段依據測試需求分析階段中確定的測試項,分別設計了測試用例概要表和詳細表,共設計52個配置項級測試用例,覆蓋各測試項所要求的測試類型及測試內容。這種自頂向下的測試需求分解,可以從軟件需求規格說明一直追蹤到測試用例,反之亦可追蹤,從而保證了系統級測試的充分性。
3.5 測試差異和異常分析
在配置項測試中,測試方使用的測試環境與測試需求規格說明要求一致,在測試執行前,測試人員和開發方進行了測試環境確認,并就測試用例的適應性和可執行性進行了分析與再次確認,保證了測試用例的最大限度執行。在測試執行過程中,根據測試環境對測試用例的操作步驟進行了修改完善,保證了測試用例的正確性。
4 結語
基于模擬環境的軟件測試,對無線電高度表軟件的全部功能和工作流程進行測試,發現軟件缺陷和高度表功能性能缺陷。通過搭建可配置的高逼真度載機模擬環境和飛機模擬環境,基于實際使用的典型數據模態設置測試用例,能對高度表軟件以及系統功能進行功能驗證和性能驗證,同時只需調整配置接口協議和測試模態,該方法便可推廣至該系列的高度表軟件測試。
參考文獻:
[1] 郭久武,陳策,等.裝備軟件定型測評的幾個誤區[J].軍用軟件測評實驗室,2011(3):1-3.
[2] 張海藩.軟件工程[M].北京:人民郵電出版社,2002:55-123.
[3] 鄭人杰,許靜,等.軟件測試[M].北京:人民郵電出版社,2011:49-76.
[4] 齊歡,王小平.系統建模與仿真[M].北京:清華大學出版社,2004:3-10.
作者簡介:張蕾(1979-),女,工程師,主要從事機載嵌入式軟件測試技術的研究工作。