李 雪,曹 欣
(卡斯柯信號有限公司,北京 100070)
增強型列車控制系統(Incremental Train Control System,ITCS)是采用衛星定位、實時連續進行無線車-地通信的成熟信號控制技術,已成熟應用在青藏鐵路多年。國產化ITCS 車載系統采用全球導航衛星系統(Global Navigation Satellite System,GNSS)與速度傳感器多信息融合技術確定列車位置,精確的列車定位功能是車載系統重要且基礎的功能。國產化ITCS 車載系統GPS 坐標的地圖匹配技術定位方法是根據經緯度計算投影到單一正線股道上的卡爾曼濾波計算方法。經過多輪室內系統級、軟件級測試,并經過現場試驗,車載系統功能逐漸成熟穩定。
如圖1 所示,隨著格爾木南站改造,地面出現Y 型站股道,相應的車載系統需具備Y 型股道精確定位功能。與單一正線股道投影的卡爾曼濾波計算方法區別較大,Y 型股道定位功能是通過復雜邏輯處理列車到多個股道的投影,識別列車精確位置。車載定位功能作為車載系統重要且基本功能,影響范圍較大,關聯的功能較多。在已穩定成熟的車載系統基礎上變更車載定位相關功能,且Y 型股道地面數據環境較為復雜,需要進行回歸測試,驗證定位功能變更能否正確實現,且對已有功能不會產生不良影響。由于可投入到一次回歸測試的資源是有限的,如何避免冗余的測試用例,進行合理有效的影響分析,確認回歸測試范圍,變得尤其重要。本文重點闡述國產化ITCS 車載系統Y 型股道定位的影響分析活動及回歸測試策略。

圖1 格爾木河改造前后股道對比Fig.1 Comparison of tracks before and after reconstruction of Golmud River
國產化ITCS 車載系統仿真測試平臺通過模擬青藏線格拉段車-地設備通信功能,其中軌旁仿真系統能夠實時地輸出當前位置、站號、股道和速度信息。模擬衛星導航系統接收到信息后需要結合既有的地圖數據庫生成經緯度、速度和航向角信息,為車載設備提供連續、動態且準確的定位信息,滿足車載設備的車載動態運行實驗室測試要求。實驗室測試中會連接真實衛星接收機,驗證車載設備靜態接收衛星信號功能,根據測試環境合理安排測試內容,充分利用測試環境進行列車定位功能的回歸測試,如圖2 所示。

圖2 ITCS車載系統仿真測試平臺Fig.2 ITCS onboard system simulation test platform
與現場測試相比,室內測試的優越性非常明顯,具有測試手段靈活、執行效率高等優點。GPS 差分基站、無線閉塞中心(Radio Block Center,RBC)以及GNSS 接收機為模擬器,模擬器測試環境存在修改數據靈活的優點,通過工具軟件可以實時查看RBC 及GNSS 接收機的信息,觀察測試現象,減少從硬件下載日志、解析分析日志的時間,顯著提高了測試效率,如表1 所示。

表1 測試環境優缺點比較Tab.1 Comparison of advantages and disadvantages of test environment
格爾木河改造前,車載根據電子地圖數據,選擇滿足條件的投影到單一股道的有效列車位置,且進路唯一。格爾木河改造后出現Y 型股道,車載設備 (OBS)需要根據電子地圖數據,選擇GPS 位置可映射到且唯一滿足GPS 位置的股道距離小于等于350英尺的線路電子地圖,確認當前列車初始位置實現Y型股道定位,并根據道岔方向確定進路方向。
回歸測試中需驗證Y 型股道定位功能是否正常實現,并充分驗證其他功能不受影響,故回歸測試策略變得尤其重要。采用產品影響分析技術和方法確定回歸測試范圍:根據影響分析策略,確定需求文件的變動,修復的缺陷問題,測試接口、質量接口和安全接口等文檔變動。使用對本次軟件發布的代碼與上一版代碼進行比較,對于不同處進行檢查分析,進行代碼走讀工作。測試人員應積極參與代碼走讀工作,確認檢查代碼修改是否關聯缺陷,并分析代碼變更中模塊交互,識別受影響的功能測試項。結合需求文檔、發布代碼及修復缺陷列表,確定全面的回歸測試影響范圍,如圖3 所示。

圖3 影響分析技術Fig.3 Impact analysis technology
代碼變更涉及需要回歸的測試階段是軟件單元測試、軟件集成測試、軟件確認測試、系統集成測試和系統確認測試;回歸測試涉及的主要功能模塊包括初始定位功能、連續定位功能、列車匯報占用功能、完整性監控功能、與RBC 的會話管理功能、模式轉換功能及進路切換功能,并結合現場數據及運營場景豐富測試案例。另外,基于經驗的影響分析技術是不可或缺的,需要研發人員、室內測試人員、現場測試人員和制作地面數據的項目組成員,根據經驗提出影響分析測試范圍的建議。測試人員根據建議豐富測試場景,增加測試案例。
1)軟件級測試
軟件級測試包含軟件單元測試、軟件集成測試以及軟件確認測試。
遵循先靜態后動態的原則進行軟件單元測試,靜態測試包含代碼規則檢查、代碼驗證并進行靜態測試活動,例如代碼驗證和代碼走讀(包含規則檢查)。動態測試輸入覆蓋有效等價類、無效等價類、邊界值,并達到語句覆蓋率、分支覆蓋率、修正判定條件覆蓋(Modified Condition/Decision Coverage,MCDC)為100%。軟件集成測試階段:全面分析所有軟件模塊及模塊間的接口,保證每個接口被至少一個測試用例覆蓋。
原有國產化ITCS 車載系統GPS 坐標的地圖匹配技術定位方法原理是,根據經緯度計算投影到單一正線股道上的卡爾曼濾波計算方法。定位功能邏輯需要變更實現Y 型站股道和既有線路的精確地圖匹配技術。除使用有效等價類劃分、無效等價類劃分、邊界值分析、狀態轉化表等常規測試技術設計編寫用例外,在軟件確認測試階段深挖定位算法邏輯,結合Y 型站數據,選取多個特殊列車啟動初始位置,組合設計簡化版白盒測試用例,豐富定位算法的白盒測試用例,更為深入地驗證Y 型股道中列車定位功能。并且根據相關應用場景設計用例,盡可能在連續運行的環境下進行測試驗證,保證測試執行效率。另外,推薦測試人員根據測試經驗,使用錯誤猜想的測試技術,設計投影到3 個股道的偏差距離均處于有效邊界、進路切換標志無效變有效等特殊案例,有效地豐富測試案例。
2)系統級測試
系統集成測試階段:主要驗證車載系統與外部接口之間的通信交互、車載系統內部各軟件、硬件之間的通信交互。根據Y 型股道定義功能變更的影響分析結果,使用等價類、邊界值分析等常規測試技術,設計正常通信、故障通信等信息交互場景下的測試用例,并考慮故障恢復后車載系統的通信交互如圖4 所示。

圖4 Y型股道示意Fig.4 Schematic diagram of Y-shaped Track
系統確認測試活動中使用一種基于列車控制系統的功能測試方法,首先,接收用于列車功能影響測試的待測試功能代碼;接著,根據功能標識分析待測試功能代碼,得到待測試的單一功能代碼;然后,根據測試線路組合生成待測試項,待測試項由一個或多個單一功能代碼組成;最后,執行待測試項,以測試列車控制系統的功能是否正常,即相比于現有技術中通過人工來制定列車控制系統功能影響的測試方案,此功能測試方法能夠高效、準確地制定完整的功能影響測試方案,以便對列車控制系統的功能進行測試。
接收用于列車功能影響測試的待測試功能代碼。根據功能標識分析待測試功能代碼,得到待測試的單一功能代碼。使用Understand 工具根據功能標識分析待測試功能的C 語言代碼。
以A 站為出發站為例,列出運行線路。根據代碼功能關聯關系,組合其他功能點編寫測試項,如表2 所示。

表2 A站出發線路組合Tab.2 departure line combination of station A
執行待測試項,以測試列車控制系統的功能是否正常。具體為待測試項的軟件環境配置可以由測試人員手動配置,在接收到配置完成的指令后,執行待測試項。也可以在生成待測試項后,根據待測試項自動從本地數據庫中調用相關數據進行軟件環境配置,在接收到配置完成的指令后,執行待測試項。
在執行待測試項時,如果某個待測試項不通過,在修改測試項對應的待測試功能代碼之后,重新執行所有待測試項,充分驗證車載正常實現精確定位,且其他功能正常實現。
當成熟車載系統的重要基礎功能發生變更時,如何正確、準確地識別影響分析范圍,是回歸測試的重要環節之一。本文提出的回歸測試策略對列車定位功能變更的影響進行全面分析,選取成熟測試技術,根據測試環境和地面數據,設計有效的測試方案,并精確定位回歸測試范圍,保證回歸測試的充分性,極大地提高測試效率。