摘要:本文針對民用飛機航電系統(tǒng)集成驗證流程復雜、周期長的特點,研究了航電系統(tǒng)試驗的自動化測試方法、測試用例的規(guī)劃以及試驗管理方法,并根據(jù)民用飛機航電系統(tǒng)驗證流程,提出了一個低開發(fā)風險的、靈活的自動化測試與管理系統(tǒng)架構(gòu),該系統(tǒng)可集成多種成熟商用軟件并且不依賴于硬件平臺,可與現(xiàn)有的航電系統(tǒng)試驗設(shè)施結(jié)合,兼容已有的試驗數(shù)據(jù)文件,實現(xiàn)試驗過程的自動化與集中式管理。
關(guān)鍵詞:自動化測試 試驗管理 測試用例 構(gòu)型管理
中圖分類號:V22 文獻標識碼:A 文章編號:1674-098X(2011)10(b)-0000-00
試驗室試驗是民用飛機航電系統(tǒng)集成與驗證過程中的重要環(huán)節(jié),通過試驗室試驗?zāi)軌蛟诤诫娤到y(tǒng)開發(fā)的早期盡可能多的發(fā)現(xiàn)問題,使絕大部分問題能夠在設(shè)備裝機前得到解決,避免了裝機后由于設(shè)計缺陷而造成的系統(tǒng)重大更改,從而降低整個航電系統(tǒng)集成的風險,有效的縮短了航電系統(tǒng)的開發(fā)周期。隨著技術(shù)的進步,航空電子設(shè)備越來越趨向于小型化、集成化,航電系統(tǒng)逐漸由各子系統(tǒng)相對獨立的聯(lián)合式系統(tǒng)發(fā)展為一個集成度高的、結(jié)構(gòu)復雜的綜合模塊化航電系統(tǒng)[1][2],這對航電系統(tǒng)的集成與驗證帶來了新的挑戰(zhàn),傳統(tǒng)的手工測試和非集中式的試驗數(shù)據(jù)、文檔管理已經(jīng)不能滿足日益復雜航電系統(tǒng)驗證需求,傳統(tǒng)手工測試中大量枯燥的重復操作也大大增加了試驗人員的誤操作幾率和試驗周期。本文提出了一種通用的自動化測試與管理系統(tǒng),可在不更改或極少更改當前已有的航電試驗設(shè)施的情況下,實現(xiàn)航電系統(tǒng)試驗過程的自動化和整個試驗周期中試驗數(shù)據(jù)、文檔的管理,使試驗過程和結(jié)果可控、可追溯。
1 自動化測試與管理在航電系統(tǒng)試驗中的作用
自動化測試與管理系統(tǒng)的主要功能是試驗任務(wù)的編制與調(diào)度,提供一個頂層的管理平臺實現(xiàn)對整個試驗過程的流程控制和結(jié)果追蹤。自動化測試與管理系統(tǒng)與航電系統(tǒng)綜合驗證設(shè)施的關(guān)系如圖1所示。
圖1 自動化測試與管理系統(tǒng)與航電綜合驗證設(shè)施的關(guān)系
自動化測試與管理系統(tǒng)通過調(diào)用航電試驗設(shè)施提供的應(yīng)用程序接口(API),實現(xiàn)與航電試驗設(shè)施的通信。在航電系統(tǒng)綜合驗證中,自動化測試與管理系統(tǒng)與航電試驗設(shè)施中的仿真系統(tǒng)、I/O控制系統(tǒng)和數(shù)據(jù)采集系統(tǒng)通信,能夠操控航電試驗設(shè)施完成一個完整的試驗過程中應(yīng)能夠完成的所有操作,使得自動化測試與管理系統(tǒng)可以站在更高層的角度,對整個試驗(包括自動測試)過程進行規(guī)劃。在圖1中,航電系統(tǒng)集成驗證設(shè)施作為航電系統(tǒng)試驗的實施工具,而自動化測試與管理系統(tǒng)則作為航電系統(tǒng)試驗的規(guī)劃與管理工具,主要提供以下功能:
a) 通過調(diào)用接口,與航電試驗設(shè)施進行互操作,使用戶可以獨立于航電試驗設(shè)施編輯測試用例,測試用例可以保存成單獨的文件;
b) 對試驗任務(wù)的組成進行規(guī)劃,使用戶可以自定義一個完整的試驗任務(wù),將相關(guān)的文件、測試用例和數(shù)據(jù)有機的結(jié)合在一起;
c) 實現(xiàn)試驗任務(wù)執(zhí)行的流程控制,使用戶能夠?qū)θ蝿?wù)的執(zhí)行過程進行調(diào)度,對結(jié)果進行監(jiān)控;
d) 對上述試驗任務(wù)的內(nèi)容以及執(zhí)行過程形成的數(shù)據(jù)和文檔提供構(gòu)型管理功能,使試驗文檔、數(shù)據(jù)和結(jié)果可追溯。
e) 自動化測試與管理系統(tǒng)所實現(xiàn)的試驗流程管理與具體的驗證設(shè)施無關(guān)。
2 自動化測試與管理系統(tǒng)設(shè)計
2.1 設(shè)計原則
自動化測試與管理系統(tǒng)的設(shè)計原則是使系統(tǒng)中每個組成部分的功能相對獨立,各個部分可以根據(jù)實際情況開發(fā)或直接選用商用成熟產(chǎn)品,從而降低系統(tǒng)的開發(fā)難度。將商用成熟產(chǎn)品集成到系統(tǒng)中的好處在于開發(fā)人員只需關(guān)心接口,可方便的實現(xiàn)系統(tǒng)中組件的升級,延長整個系統(tǒng)的生命周期,使系統(tǒng)具有更好的通用性。
2.2 系統(tǒng)架構(gòu)
自動化測試與管理系統(tǒng)的架構(gòu)如圖2所示。
圖2 自動化測試與管理系統(tǒng)架構(gòu)
系統(tǒng)的組成如下:
a) 應(yīng)用程序調(diào)用接口:提供一個與試驗設(shè)施交聯(lián)的通用接口,通過調(diào)用由試驗設(shè)施提供的應(yīng)用程序接口(API)實現(xiàn)與試驗設(shè)施的互操作。
b) 試驗任務(wù)編輯:提供了一個人機交互環(huán)境,通過圖形界面規(guī)劃試驗流程、編制試驗任務(wù)。
c) 用戶權(quán)限管理:針對試驗人員的分工管理不同用戶的權(quán)限,權(quán)限包括數(shù)據(jù)查看的權(quán)限,任務(wù)編制與執(zhí)行的權(quán)限等。
d) 報告生成:將流程執(zhí)行的情況以及執(zhí)行的結(jié)果生成報告,報告的格式可由用戶自定義。
e) 數(shù)據(jù)存儲:實現(xiàn)流程編制、執(zhí)行過程中的中間數(shù)據(jù)以及執(zhí)行結(jié)果的存貯,并提供一個與第三方構(gòu)型管理軟件的接口,實現(xiàn)整個試驗流程的構(gòu)型管理。
f) 流程管理核心:提供底層的服務(wù),用于自動化測試與管理系統(tǒng)各個功能組件之間的運行調(diào)度和數(shù)據(jù)交換。
2.3 測試用例編輯與管理
測試用例是航電系統(tǒng)試驗的核心,是針對某一條或幾條相關(guān)的測試需求所提出的用于驗證該需求的測試場景,包括輸入輸出條件、步驟等。測試用例可以是一段文字描述,也可以包含實際可執(zhí)行的自動測試代碼。本文根據(jù)航電系統(tǒng)試驗的實際情況,將傳統(tǒng)使用文字描述的測試用例與能夠執(zhí)行的測試代碼結(jié)合起來,測試用例的文字部分用于測試場景的描述,測試用例的執(zhí)行部分分為三個階段:系統(tǒng)設(shè)置階段,測試階段和還原設(shè)置階段。其中系統(tǒng)設(shè)置階段用于設(shè)置該測試用例所包含的測試條目所需的系統(tǒng)構(gòu)型;測試階段是測試用例中各測試條目的運行階段;還原設(shè)置階段用于將本測試用例改動的系統(tǒng)配置還原,以免影響后續(xù)的測試。
在測試用例的三個階段中,每個階段又可分為一個或多個“步驟”,每個“步驟”代表了在傳統(tǒng)手工測試中試驗人員的一個操作。“步驟”為測試用例中最小的可執(zhí)行單位。
在一個測試用例中,為了使數(shù)據(jù)能夠在不同“步驟”之間傳遞,使得測試用例能夠自動完成一些帶有邏輯判斷的、流控制的復雜操作,在測試用例中加入了“變量”的概念,可將“步驟”中產(chǎn)生的數(shù)據(jù)可存入變量,并在其它步驟中讀取變量的值,從而完成步驟之間數(shù)據(jù)交換。變量的適用范圍僅限于一個測試用例內(nèi)部,是該測試用例的組成部分。為了方便管理,每個測試用例都是一個單獨的文件。
2.4 試驗任務(wù)管理
為了提高系統(tǒng)的通用性,能夠管理在未引入本系統(tǒng)以前的零散的電子文件、試驗數(shù)據(jù),試驗任務(wù)管理[3]采用了基本的文件與文件夾管理,并且盡量使用通用的文件格式。本文結(jié)合民用飛機航電系統(tǒng)試驗的流程,將試驗任務(wù)分為四個部分:測試需求、試驗構(gòu)型、測試用例和試驗文檔。其中測試需求的來源為飛機的T0、T1、T2級需求,分為飛機級測試需求、系統(tǒng)級測試需求和子系統(tǒng)級測試需求,分別用于飛機級集成驗證、系統(tǒng)級集成驗證和設(shè)備級驗證。測試需求同時也作為測試用例的輸入文件。試驗構(gòu)型包括待測系統(tǒng)以及試驗設(shè)施的軟硬件組成、版本信息等,只有在確定了試驗構(gòu)型的基礎(chǔ)上,一次試驗的結(jié)果才是有意義的。測試用例可追溯到一條具體的測試需求,并可被不同試驗任務(wù)復用。試驗文檔指一次試驗任務(wù)包含的文字資料,包括:試驗任務(wù)書、試驗大綱、試驗報告等。
試驗任務(wù)的執(zhí)行主要是規(guī)劃一個試驗任務(wù)中測試用例的執(zhí)行。每一個測試用例都是一個獨立的個體,當一個試驗任務(wù)執(zhí)行時,按照測試用例的排列順序,順序執(zhí)行測試用例中的步驟。
試驗任務(wù)的構(gòu)型管理[4]將上述試驗任務(wù)的各組成部分分別進行版本管理,這樣,一個正式的試驗任務(wù)反映了不同版本的測試需求、試驗構(gòu)型、測試用例和試驗文檔的有機組合,通過試驗任務(wù)的構(gòu)型管理,可對歷史試驗任務(wù)的詳細信息進行追溯,并實現(xiàn)歷史試驗任務(wù)的重現(xiàn)。
4 結(jié)論
本文分析了自動化測試與管理在民用飛機航電系統(tǒng)綜合驗證中的作用,針對現(xiàn)代航電系統(tǒng)集成度高、結(jié)構(gòu)復雜的特點,對航電系統(tǒng)試驗管理方法,測試用例的規(guī)劃以及構(gòu)型管理進行了研究,提出了一種民用飛機航電試驗的自動化測試與管理系統(tǒng)方案,該方案不依賴具體的試驗設(shè)施,可與多種成熟商用軟件結(jié)合,實現(xiàn)方法靈活,開發(fā)難度小,可應(yīng)用于新建或現(xiàn)有的航電綜合實驗室中,彌補了傳統(tǒng)手工測試與管理的不足。
參考文獻
[1] 江帆, 鞠建波, 鄧小濤. 綜合航空電子系統(tǒng)新技術(shù)研究[J] 現(xiàn)代電子技術(shù), 2003(20) .
[2] 何志強. 綜合化航空電子系統(tǒng)發(fā)展歷程及重要支撐技術(shù)[J] 電訊技術(shù), 2004(4) .
[3] 黃明石, 劉永志, 鄭權(quán). 飛行試驗管理系統(tǒng)的設(shè)計與軟件實現(xiàn)[J], 飛行力學, 2000(4) .
[4] 楊璽, 范玉青. 飛機構(gòu)型控制技術(shù)初探[J] 北京航空航天大學學報, 2000(3) .