王晨宇
(山東省信宇通信工程監理有限公司,山東 青島 266000)
無線通信設備主要是利用無線電波傳播信息的設備,是現階段我國對外遠距離通信的主要手段。無線通信設備自動化測試系統主要是依據現階段《900/1800MHz TDMA 數字蜂窩移動通信網通用分組無線業務(GPRS)設備測試方法:移動臺》(YD/T 1215—2006)、《900/1800MHz TDMA 數字蜂窩移動通信網通用分組無線業務(GPRS)設備技術要求:移動臺》(YD/T 1214—2006)對無線通信設備運行的要求,以LabView 軟件為工具開發的一套用于無線通信設備自動化測試的系統[1]。
以阿里巴巴為例,由于其主要以電商為核心,對交易系統的通信穩定性具有較高的要求。在整體交易系統的整體發展過程中,維護人員也在不斷流轉,導致現有維護者無法清晰了解無線通信業務的代碼順序。再加上常規自動化測試工具需要進行腳本編寫及測試數據準備,覆蓋率較低,與需求重構后回歸驗證要求不相符,這就導致全面升級階段的回歸測試難度較大。基于此,在阿里巴巴內部設置了一個依賴真實流量回歸的無線通信設備自動化測試平臺,可以通過創新的自動Mock(在自動化測試階段部分不易構造、獲取的對象,可采用虛擬對象創建的方式進行測試)機制,復制線上真實流量,進行自動化回歸測試。同時通過寫接口驗證、讀接口回歸驗證,發現無線通信設備運行階段出現的重構bug(漏洞),保證交易通信項目的穩定運行[2]。
以LabView 軟件為開發工具的無線通信設備自動回歸測試平臺主要是將一部分線上真實流量進行復制。隨后在新的自動Mock 機制約束下,借助Java 的instrument(代碼分析及內存自動化測試工具),實現面向切面編程(Aspect Oriented Programming,AOP)。
無線通信設備自動化測試平臺的架構如圖1 所示,其中接入層主要負責將機房與阿里云生產環境連接;數據儲存單元將測試用例映射組成策略進行分類儲存,為后續數據信息管理提供依據;內部穩定性測試平臺主要負責對數據分類操作的穩定性開展測試。無線通信設備自動化測試平臺可以依托阿里云生產環境,完成靈活、可擴展性無線通信設備運行流量的自動化測試[3]。

圖1 無線通信設備自動化測試平臺的架構
無線通信設備自動化測試平臺主要采用的是Internet/Intranet 技術,通過利用主流MySQL 數據庫規范(如圖2)進行設計。

圖2 MySQL 數據庫
系統測試組網主要通過“云”環境,以云的方式,面對多個監測對象,形成云端自動化測試平臺。在實際設計過程中,主要使用綜測儀、頻譜儀、信號源等測試工具,經物理層交換機或測試集成箱對無線通信基站、無線通信終端運行數據進行搜集。隨后根據自動化測試平臺自動化腳本,執行任務管理、日志管理、統計管理、系統交互等作業。經多個中間件,對運行現場、外部研發模塊進行全過程維護[4]。
無線通信設備自動化測試平臺軟件操作系統主要利用LabView 平臺。依據Mock 協議,保證無線通信設備自動化測試平臺與上、下各個模塊均完全兼容。同時選用通用開發工具Java 的最新版本,進行平臺開發[5]。
為實現無線通信設備自動化測試平臺對外系統請求的Mock,可利用不同類型中間件對外發起遠程過程調用(Remote Procedure Call,RPC)請求,或者通過無線通信設備自動化測試平臺配置的中間件,隔離無線通信各模塊。隨后無線通信設備自動化測試平臺客戶端會針對相關中間件,在脫離人工配置RPC接口的情況下進行AOP 處理,實現對外系統請求的自動Mock。另外,第四范式還發布自動機器學習平臺AutoML 2.0。對外系統請求的Mock 緊跟市場發展,希望引領市場需求,會在恰當時期推出符合需求的產品。如今到了軟件定義算力的階段,第四范式現在先做到骨架的改變[6]。
一方面,在測試某一無線通信設備時,需要依據委托創建→用例關聯→任務分配及接收→測試配置及執行→測試結果生成的順序執行。其中,在委托創建模塊,應保證一款無線通信設備與一個特定委托一一對應;用例關聯主要是明確測試內容;任務分配及接收需要在測試內容確定后,確定用例分配對象及時間要求;而測試配置及執行主要是在相關模塊對象確定之后,與物理交換機、測試儀及客戶端配合,選擇恰當的測試用例參數。
另外,針對無線通信設備自動化測試平臺運行時內存數據狀態、回放時內存數據狀態不一致的情況,可以程序執行流程實現為入手點。綜合考慮內存開關、本機緩存、Session 查詢等因素,在平臺內部設置自定義Mock 機制。通過將導致回放、測試階段不一致代碼片段創建成虛擬對象,可以保證線上回放執行程序與原有測試程序一致。
對于Web應用而言,請求最終可以HTTP請求(從客戶端到服務器端的請求消息)發送的方式,實現自動化測試驗證。假定阿里巴巴生產環境中無線通信設備應用可以正常響應用戶的請求,且可以通過AOP的方式,將返回結果、請求入參及執行快照數據(如訪問數據庫及訪問遠程服務器的入參、返回結果等)逐一保存。隨后將儲存的快照數據發送給測試機器,即代碼發生變化的機器。在測試機器收到快照數據瞬間,即為一次完整的回放過程結束時刻。同時,可將調用后臺請求數據、返回結果、落庫數據、線上真實請求發生時的數據等信息進行全量對比。通過對相關信息間差異進行分析,可以得出被測試無線通信設備中出現的問題。在整個自動化測試過程中,若發現其中存在差異,則可以RPC 請求發送的方式,記錄中間快照數據,利用RPC 入參、RPC 返回值進行回放。
3.4.1 緊急呼叫
緊急呼叫是以“PAN-PAN” 開頭,“PANPAN”表示緊急,即呼叫電臺有很緊急的電信要發送,關系到一艘交通工具、飛機或其他交通工具的安全或人員的安全。將Mock 機制的甚高頻(Very High Frequency,VHF)無線電話置于CH70,輸入“所有電臺”或“特定臺的9 位識別碼”,設定呼叫種類為“緊急”,然后發送緊急呼叫。緊急呼叫發送完畢后,在CH16 發送緊急信息。將無線電話機置于CH16,然后語音發送:
——PAN - PAN PAN - PAN PAN - PAN
——All stations All stations All stations
——this is
——本交通工具9 位識別碼或呼號
——緊急信文
——over
交通工具在CH70 上接收到對所有交通工具發送的緊急呼叫后,不應對數字選擇性呼叫(Digital Selective Calling Terminals,DSC)系統的呼叫進行確認,但應該在CH16 守聽緊急信文。
3.4.2 安全呼叫
VHF 無線電話呼叫是以“SECURITE”開頭,“SECURITE”表示與安全有關的信文,即呼叫臺將要發送有關航行安全的信文或重要的氣象警告,呼叫格式為:
——SECURITE SECURITE SECURITE
——All stations All stations All stations
——this is
——安全信文
——over
如果遇到交通問題,各種搜救力量接到遇險報警信號或搜救任務協調員的指令后應全速駛往出事地點。但由于駕駛員某種情況下必須棄交通工具,搜救作業要注意以下幾點:一是交通工具在到達出事地點附近開啟9 GHz 雷達;二是SART 的發射距離;三是向下風、流處搜尋;四是交通工具和航空器之間可使用VHF CH06 通信。
若駕駛員沒有棄交通工具,應有遇險交通工具指定通信工具。若是與去救援的交通工具通信,則只能使用VHF(去救援的交通工具上唯一通信工具就是VHF)。
(1)交通工具向VTS 報告的種類及內容。船舶交通服務(Vessel Traffic Service,VTS)水域通信主要是交通工具向VTS 報告,各VTS 要求報告種類有所不同,主要報告為交通工具從適用地點出發前到指定地點前若干時間向VTS 所做的報告。報告內容大致包括交通工具名稱和呼號、交通工具旗國、交通工具資料、現在交通工具位、其他相關信息(如航向、航速、目的港等)。
(2)偏離報告或變更報告(Deviationreport,DR)。如果需要則做此變更報告,即改變航行計劃時進行此項報告,如進入或離開錨地。
(3)事故報告(IR/DG/HS/MP)。當交通工具發生或發現交通事故、污染事故或其他緊急情況后向VTS 所做的報告。事故報告的內容包括3 個方面:一是交通工具名稱和呼號;二是交通工具位置;三是緊急情況及VTS 要求的其他信息。并不是交通工具經過每一個VTS 交通網絡都要進行上述報告點,但航行計劃和交通工具位是必須要報告的。
在無線通信設備應用范圍逐步拓展的背景下,傳統測試平臺已無法勝任自動化測試工作,Mock 機制的無線通信設備,可實現遠程通信,并能從無人機實時傳輸4K 未壓縮視頻。同時,Mock 機制的無線通信設備與5G 寬帶聯合工作,將開啟一系列新的可能性,如360 度視頻流和沉浸式虛擬現實應用。不僅如此,Mock 機制的無線通信設備項目還推動了毫米波無線通信系統的開發,使遠程通信成為可能。因此,為了充分發揮無線通信設備接入控制器的產品性能,相關設計人員可在內部開發一個無線自動化測試平臺,以便從根本上解決無線通信平臺手動測試效果不佳的問題。