陳慶芬
中國(guó)電子科技集團(tuán)公司第三十八研究所 安徽 合肥 230088
隨著雷達(dá)設(shè)備規(guī)模的顯著增加,面臨的狀態(tài)監(jiān)測(cè)和維修保障任務(wù)越來(lái)越復(fù)雜。健康管理(PHM)是用于雷達(dá)裝備狀態(tài)監(jiān)測(cè)和維修保障的一項(xiàng)新技術(shù),已在國(guó)內(nèi)外先進(jìn)的武器裝備上成功應(yīng)用。在雷達(dá)裝備中也迫切需要使用這項(xiàng)新技術(shù),以便提升雷達(dá)故障預(yù)測(cè)、狀態(tài)監(jiān)測(cè)和維修保障的能力。
B/S模型結(jié)構(gòu)可實(shí)現(xiàn)數(shù)據(jù)管理與用戶管理更大的靈活性與開放[1]。在B/S結(jié)構(gòu)下,在客戶端只需要安裝瀏覽器及相關(guān)協(xié)議軟件,即可訪問(wèn)服務(wù)器。軟件的開發(fā)、維護(hù)與升級(jí)只需在服務(wù)器端操作,縮短了系統(tǒng)開發(fā)周期,降低了維護(hù)費(fèi)用[2]。
本文介紹了雷達(dá)健康管理軟件和B/S架構(gòu)技術(shù)的基本概念和應(yīng)用背景,重點(diǎn)對(duì)B/S架構(gòu)的雷達(dá)健康管理軟件測(cè)試方法進(jìn)行了論述,介紹了適用于雷達(dá)健康管理軟件功能測(cè)試、性能測(cè)試、接口測(cè)試等的具體方法和自動(dòng)化測(cè)試工具。
雷達(dá)健康管理是指利用雷達(dá)海量的測(cè)試數(shù)據(jù)、故障診斷結(jié)果、維修資源信息以及其他相關(guān)信息,對(duì)雷達(dá)系統(tǒng)的健康狀態(tài)和執(zhí)行任務(wù)的能力進(jìn)行實(shí)時(shí)分析評(píng)估及預(yù)測(cè),并根據(jù)分析評(píng)估結(jié)果自動(dòng)進(jìn)行維修決策,以實(shí)現(xiàn)雷達(dá)全壽命周期維修保障的自主化和智能化。
在靜態(tài)測(cè)試階段,選取靜態(tài)分析工具Find Bugs和代碼質(zhì)量工具Sonar Qube對(duì)代碼質(zhì)量進(jìn)行檢查和管理。
Find Bugs,是Eclipse、IDEA等開發(fā)環(huán)境下的一個(gè)插件工具。檢查類或者jar文件,將字節(jié)碼與缺陷模式進(jìn)行對(duì)比以發(fā)現(xiàn)可能存在的問(wèn)題可以檢查出包括空指針引用、無(wú)限遞歸循環(huán)等問(wèn)題。Find Bugs還為用戶提供定制Bug Pattern的功能,可以根據(jù)需求自定義Find Bugs的代碼檢查條件。
Sonar Qube是一個(gè)代碼質(zhì)量管理平臺(tái)。通過(guò)量化的方式度量代碼質(zhì)量的變化,從而可以方便地對(duì)不同規(guī)模和種類的工程進(jìn)行代碼質(zhì)量管理。支持超過(guò)25種編程語(yǔ)言??梢约刹煌臏y(cè)試工具,代碼分析工具,以及持續(xù)集成工具。開發(fā)中使用提供重復(fù)代碼、編碼標(biāo)準(zhǔn)、單元測(cè)試、代碼覆蓋率、代碼復(fù)雜度、潛在Bug、注釋和軟件設(shè)計(jì)報(bào)告提供了指標(biāo)歷史記錄、計(jì)劃圖和微分查看提供了完全自動(dòng)化的分析。
Selenium 2是一套基于WEB應(yīng)用的測(cè)試工具,通過(guò)它來(lái)執(zhí)行模仿用戶在網(wǎng)頁(yè)上的操作的測(cè)試腳本,測(cè)試人員可以對(duì)Web應(yīng)用進(jìn)行功能測(cè)試[3]。
Selenium測(cè)試直接運(yùn)行在瀏覽器中,像真正的用戶在操作;通過(guò)記錄與瀏覽器的交互以創(chuàng)建測(cè)試用例,可以使用播放選型重新運(yùn)行測(cè)試用例,不需要任何編程邏輯來(lái)編寫其測(cè)試腳本??梢詼y(cè)試與瀏覽器的兼容性,測(cè)試系統(tǒng)功能,支持自動(dòng)生成Java、.Net、Perl等不同語(yǔ)言的測(cè)試腳本,支持在瀏覽器包括IE(7、8、9、10、11),Mozilla Firefox,Safari,Opera等。
對(duì)基于大數(shù)據(jù)平臺(tái)的B/S架構(gòu)雷達(dá)健康管理軟件性能測(cè)試主要包括三個(gè)主要的方面:一是數(shù)據(jù)攝取和吞吐量,在這個(gè)階段,測(cè)試人員驗(yàn)證系統(tǒng)使用來(lái)自各種數(shù)據(jù)源的數(shù)據(jù)有多快。測(cè)試涉及隊(duì)列在給定時(shí)間內(nèi)處理不同標(biāo)識(shí)的消息。它還包括如何快速地將數(shù)據(jù)插入到底層數(shù)據(jù)存儲(chǔ)中,例如插入到MongoDB和Cassandra數(shù)據(jù)庫(kù)中的速率;二是數(shù)據(jù)處理,它涉及驗(yàn)證執(zhí)行查詢或Map Reduce作業(yè)的速度。它還包括當(dāng)?shù)讓訑?shù)據(jù)存儲(chǔ)填充在數(shù)據(jù)集中時(shí),測(cè)試使用隔離規(guī)則方式處理數(shù)據(jù);三是子組件性能,雷達(dá)健康管理軟件由多個(gè)組件組成,必須單獨(dú)測(cè)試這些組件。例如,查詢、計(jì)算的速度等。
Postman是一款功能強(qiáng)大的網(wǎng)頁(yè)調(diào)試與發(fā)送網(wǎng)頁(yè)HTTP請(qǐng)求的Chrome插件模擬各種HTTP requests:從常用的GET、POST到RESTful的PUT、DELETE等等。甚至還可以發(fā)送文件、送出額外的header人性化的Response整理。一般在用其他工具來(lái)測(cè)試的時(shí)候,response的內(nèi)容通常都是純文字的raw,但如果是JSON,就是塞成一整行的JSON。這會(huì)造成閱讀的障礙,而Postman可以針對(duì)response內(nèi)容的格式自動(dòng)美化。JSON、XML或是HTML都會(huì)整理成我們可以閱讀的格式內(nèi)置測(cè)試腳本語(yǔ)言,且支持編寫測(cè)試腳本,可以快速地檢查request的結(jié)果,并返回測(cè)試結(jié)果。
本文首先對(duì)雷達(dá)健康管理軟件呈現(xiàn)的智能化、組網(wǎng)化、大數(shù)據(jù)的趨勢(shì)進(jìn)行了分析,并結(jié)合B/S架構(gòu)設(shè)計(jì)對(duì)數(shù)據(jù)管理與用戶管理具有更大的靈活性與開放性等特點(diǎn),對(duì)B/S架構(gòu)應(yīng)用于雷達(dá)健康管理軟件設(shè)計(jì)的必要性進(jìn)行了分析。本文內(nèi)容主要對(duì)基于B/S架構(gòu)的雷達(dá)健康管理軟件測(cè)試方法進(jìn)行了論述,提出了靜態(tài)測(cè)試、功能測(cè)試、性能測(cè)試和接口測(cè)試的測(cè)試思路。結(jié)合實(shí)際項(xiàng)目應(yīng)用,深入闡述了目前主要使用的各類自動(dòng)化測(cè)試工具的使用特點(diǎn)及方法。使用本文介紹的方法,提高了雷達(dá)健康管理軟件測(cè)試的有效性、深入性、覆蓋度及測(cè)試效率,也為后續(xù)基于大數(shù)據(jù)平臺(tái)的雷達(dá)健康管理軟件測(cè)試打下了良好的基礎(chǔ)。