卡斯柯信號有限公司 徐 曼 季志均
近幾年iLOCK型計算機聯(lián)鎖系統(tǒng)的集成測試以手動測試為主,計算機聯(lián)鎖作為鐵路安全高效行車的核心控制系統(tǒng),對其安全性進行充分測試無疑是給手動測試帶來強大的壓力和考驗。iLOCK型計算機聯(lián)鎖系統(tǒng)還具有與外部系統(tǒng)豐富的接口類型,以滿足多種鐵路安全協(xié)議通信。其測試的難點有:如何建立一套完善適應性強的繼電接口模擬系統(tǒng),如何在眾多測試資源中快速更換測試環(huán)境,面對豐富的信息交互如何快速準確的分析測試結(jié)果,之后又如何提高測試執(zhí)行效率。本文提出的自動化測試設計將解決以上問題。
集成測試一直是測試領域占用資源最多的階段,測試環(huán)境最復雜,結(jié)合iLOCK性計算機聯(lián)鎖系統(tǒng)測試的難點,設計如圖1測試系統(tǒng)架構。被測對象iLOCK型計算機聯(lián)鎖系統(tǒng)(iLOCK-IPS),室外繼電接口模擬系統(tǒng)由PLC控制臺(PLC Control,簡稱PLCC)和PLC執(zhí)行單元(PLC Execution Unit,簡稱PLCEU)組成,通過網(wǎng)絡和iLOCK-IPS通信的系統(tǒng)如TCC、RBC、鄰站等由外部模擬系統(tǒng)(External Simulation System,簡稱ESS)替代,值班員操作系統(tǒng)(MMI)負責向iLOCK-IPS發(fā)送操作命令和站場圖顯示,測試架構中的核心部分是自動化測試系統(tǒng)(Automatic Test Platform,簡稱ATP)負責自動化部署、自動化測試執(zhí)行以及測試分析。
ATP自動化部署整個自動化測試架構的準備和前提,包含對iLOCK-IPS、PLCC、ESS和MMI等系統(tǒng)的部署環(huán)節(jié),每個環(huán)節(jié)的部署在具體實現(xiàn)時可使用多任務觸發(fā)配合完成。ATP首先部署iLOCKIPS和PLCC,部署成功再觸發(fā)ESS和MMI部署任務。整個部署是經(jīng)過分析iLOCK型計算聯(lián)鎖系統(tǒng)的細節(jié)和接口而展開。ATP除了實現(xiàn)自動化部署,還對部署環(huán)境進行備份,便于測試環(huán)境復現(xiàn)和更換。
目前iLOCK-IPS系統(tǒng)集成測試以手動測試為主,嵌入式軟件和數(shù)據(jù)配置燒錄使 用手動燒錄的方式,更換軟件或數(shù)據(jù)配置時首先需要取出芯片,在機器上燒錄后再將芯片放回板卡。而ATP提供在線燒錄方式,在iLOCK-IPS上電時通過網(wǎng)絡更新軟件和數(shù)據(jù)配置。
iLOCK-IPS繼電接口和硬件驅(qū)動采集板卡直接相關,在不同的站中,所需要的板卡數(shù)據(jù)和位置都是不同的,手動測試每次都依照硬件板卡配置文件,一塊一塊板卡比對或更換,更是有大型站時,需要搭建10個機籠,每個機籠12到13塊板卡,并人工核對板卡位置,當更換站場數(shù)據(jù)時,僅更換硬件板卡都已消耗不少時間。
iLOCK-IPS繼電接口在后期項目集成測試時會進行點對點測試,因此在自動化測試中繼電接口板卡位置測試可不作為重點,這樣在自動部署中調(diào)整硬件板卡配置讓其適應目前板卡位置,節(jié)省更換板卡所耗時間。按照這個設計思路,ATP首先是調(diào)整硬件板卡配置,并部署PLCC環(huán)境,讓其根據(jù)新硬件配置控制PLCEU。
圖1 iLOCK型計算機聯(lián)鎖自動化測試架構
ESS系統(tǒng)根據(jù)iLOCK-IPS外部接口類型,開發(fā)相關模擬系統(tǒng)包含TCC、RBC和鄰站等。按照鐵路標準協(xié)議,ESS實現(xiàn)和iLOCK-IPS通信,需要配置相關的安全參數(shù)和網(wǎng)絡參數(shù)。那么這些配置ATP如何部署呢?iLOCK-IPS軟件是通用的,可根據(jù)數(shù)據(jù)和配置與不同外部系統(tǒng)通信,ATP按照這個思路反推,當取得一套iLOCK-IPS的數(shù)據(jù)和配置那么就可以確定與那些外部系統(tǒng)通信,ATP通過iLOCK-IPS配置和數(shù)據(jù)反推,即可得到ESS系統(tǒng)所需配置。ATP則通過這樣反推的思路實現(xiàn)對ESS的自動化部署。
MMI主要功能是給iLOCK-IPS發(fā)送控制命令和顯示,其擁有和iLOCK-IPS匹配的數(shù)據(jù)和配置,在iLOCK-IPS系統(tǒng)集成測試中,MMI的數(shù)據(jù)和配置是相對復雜的,需要獨立制作。這樣ATP在部署MMI環(huán)境時不用反推,相對簡單,通過任務構造部署MMI數(shù)據(jù)和配置以及網(wǎng)絡環(huán)境,實現(xiàn)一鍵啟動MMI。
iLOCK型計算機聯(lián)鎖系統(tǒng)測試具有鐵路行業(yè)自身特點,它的需求變化不頻繁,項目周期長,經(jīng)過分析70%的測試用例可以重復使用。在調(diào)研多個通用自動化測試工具后,發(fā)現(xiàn)通用工具在iLOCK型計算機聯(lián)鎖系統(tǒng)測試中自動化執(zhí)行率偏低,最終針對iLOCK型計算機聯(lián)鎖系統(tǒng)特點,在ATP中開發(fā)自動化測試功能。ATP不僅支持特定的腳本執(zhí)行用例,還與MMI、iLOCK-IPS、PLCC、ESS通過網(wǎng)絡進行信息交互以獲取預期結(jié)果,ATP還可監(jiān)測各個系統(tǒng)之間通信狀態(tài),便于指示測試環(huán)境狀況。
iLOCK型計算機聯(lián)鎖系統(tǒng)中邏輯運算、系統(tǒng)功能、性能以及通信,作為集成測試的重點,其中邏輯運算最基本要完成基本的聯(lián)鎖表運算,聯(lián)鎖表在本文設計中可以直接作為輸入生成腳本,系統(tǒng)功能和通信功能測試如需通過辦理進路,在進路腳本上增加相應的檢查條件即可,其他測試則另編寫腳本。
整個自動化測試過程是通過ATP執(zhí)行腳本,控制信息交互如下:
(1)ATP執(zhí)行腳本發(fā)送控制消息給MMI,MMI將控制命令發(fā)給iLOCK-IPS,當iLOCK-IPS收到命令后,相應的內(nèi)部變量信息發(fā)給ATP,ATP收到第1處測試結(jié)果。
(2)iLOCK-IPS通過繼電接口輸出的信息通過PLCEU反饋到PLCC上,PLCC將相應的輸出信息發(fā)給ATP,ATP得到第2處測試結(jié)果。
(3)iLOCK-IPS收到MMI命令后與ESS發(fā)送通信信息變化,ESS將相應信息發(fā)給ATP,ATP收到第3處測試結(jié)果。
采集信息交互如下:
(1)PLCC將繼電采集信息通過PLCEU發(fā)給iLOCK-IPS。
(2)ESS將外部通信消息發(fā)給iLOCK-IPS。
(3)iLOCK-IPS將圖形信息等等發(fā)給MMI。
這樣ATP分別從PLCC、MMI、ESS獲取消息以及iLOCK-IPS的內(nèi)部變量,ATP就獲取到所有采集信息。通過以上過程,ATP就監(jiān)測到iLOCK-IPS內(nèi)部變量和外部所有接口的信息變化。
ATP在測試執(zhí)行中,為了較完整的測試iLOCK-IPS系統(tǒng)的功能,測試預期檢查項多,如果只有人工分析,工作量很大,為此ATP中增加了測試分析功能。
測試分析工作分解為控制和采集信息的解析、iLOCK-IPS內(nèi)部變量比較。舉例來看下,控制信息交互流程從ATP發(fā)送的命令開始,經(jīng)過MMI發(fā)給iLOCK-IPS,使得iLOCK-IPS內(nèi)部變量發(fā)生變化,因此ATP發(fā)送的控制信息和iLOCK-IPS內(nèi)部變量是存在映射關系的,接著iLOCK-IPS輸出消息到PLCC和ESS系統(tǒng),PLCC和ESS收到控制信息變化同時可能產(chǎn)生采集信息變化,采集信息則反饋回iLOCK-IPS和MMI,最后到達ATP,這樣控制流程中ATP控制信息與iLOCK-IPS內(nèi)部變量、PLCC、MMI、ESS的控制信息都存在映射關系,同理采集流程也存在映射關系,這兩類映射關系就成了測試分析的依據(jù)。ATP測試分析中將控制信息和采集信息解析為iLOCKIPS外部變量,根據(jù)映射關系對iLOCK-IPS內(nèi)部變量和外部變量進行比較,就得到測試結(jié)果。
映射關系的整理是測試分析難點,需要積攢大量信號和系統(tǒng)知識,而自動化節(jié)約下的人力和時間可以充分地用于測試分析。
結(jié)語:本文提出的iLOCK型計算機聯(lián)鎖系統(tǒng)自動化測試設計,主要是把測試人員從機械式的手工測試勞動中解放出來,通過自主開發(fā)的ATP、ESS工具可以很好的切合iLOCK型計算機聯(lián)鎖的自動化測試需求,PLCC和PLCEU很好的解決繼電接口模擬的問題,ATP展現(xiàn)了較強的自動化部署和自動化測試能力,原來手動搭建1套環(huán)境至少需要1個測試人員1天時間,現(xiàn)只需要1h,以前測試人員執(zhí)行上百個用例至少要2周時間,自動化執(zhí)行只需要1天,大大提高了工作效率,測試人員的精力可以投到測試分析和對系統(tǒng)學習等更有意義的事情中,真正用在提高iLOCK型計算機聯(lián)鎖產(chǎn)品質(zhì)量本身。