• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      國產(chǎn)特種計算機自動測試控制系統(tǒng)設(shè)計?

      2021-06-28 07:04:06石釗銘胡哲琨陳敬東
      艦船電子工程 2021年6期
      關(guān)鍵詞:自動測試測試用例特種

      石釗銘 胡哲琨 陳敬東

      (1.海裝駐武漢第四軍事代表室 武漢 430205)(2.武漢數(shù)字工程研究所 武漢 430205)

      1 引言

      特種計算機是用于特定工業(yè)領(lǐng)域的專用計算機,其功耗、體積、可靠性、實時性往往受到嚴格約束,需要在高溫、潮濕、震動等特定環(huán)境下保持長時間和高可靠運行,并完成各類數(shù)據(jù)處理、信息傳輸、實時控制等任務。相較于一般的通用計算機而言,特種計算機在可靠性和穩(wěn)定性方面的要求更為嚴格,因此在特種計算機的研制和生產(chǎn)過程中通過高效手段來測試和驗證其性能就更為重要。

      近年來,隨著我國對工業(yè)領(lǐng)域信息安全問題日益重視,基于國產(chǎn)CPU和國產(chǎn)操作系統(tǒng)的特種計算機被越來越多地應用于各類工業(yè)領(lǐng)域[1~2],國產(chǎn)特種計算機的性能和可靠性也受到了更多的關(guān)注。由于指令集和編程接口等方面的差異,以往的計算機測試工具和測試系統(tǒng)并不能對國產(chǎn)特種計算機實施全面而有效的測試和檢驗,因此研制一套面向國產(chǎn)特種計算機的自動測試控制系統(tǒng),實現(xiàn)對國產(chǎn)特種計算機功能和性能的測試驗證,并通過批量控制手段提高試驗效率,對把控國產(chǎn)特種計算機的性能和可靠性從而保障其領(lǐng)域應用效能具有重要意義。

      在計算機測試系統(tǒng)方面,目前已開展多種研究。趙源[3]利用多線程技術(shù)有效提高了自動測試系統(tǒng)的吞吐率;李姍[4]面向航天器綜合電子系統(tǒng)提出了一種可重構(gòu)擴展的模塊化通用測試系統(tǒng);云穎[5]對基于CAN總線的星載軟件測試系統(tǒng)進行了研究;王雷[6]提出了一種高鐵/地鐵信息處理系統(tǒng)應力加速驗證方法,加快了可靠性評估過程。

      本文設(shè)計了一套面向國產(chǎn)特種計算機的自動測試控制系統(tǒng),該系統(tǒng)根據(jù)配置的批量被測計算機信息及測試項生成測試命令,并按照測試控制通信協(xié)議將命令發(fā)送給被測計算機。被測計算機根據(jù)接收到的測試命令執(zhí)行相關(guān)測試用例,并將測試結(jié)果反饋給自動測試控制系統(tǒng)以存入數(shù)據(jù)庫。所有測試執(zhí)行完畢后,自動測試控制系統(tǒng)根據(jù)數(shù)據(jù)庫中存放的結(jié)果生成測試報表。此外,基于心跳機制實現(xiàn)了測試狀態(tài)監(jiān)測功能,能夠及時發(fā)現(xiàn)試驗過程中的宕機等故障,從而使自動測試控制系統(tǒng)能夠適用于特種計算機長時間可靠性試驗場景。試驗表明,本文設(shè)計的自動測試控制系統(tǒng)能夠?qū)a(chǎn)龍芯、申威特種計算機實施測試控制,可滿足不同架構(gòu)的國產(chǎn)特種計算機批量測試與驗證需求。

      2 自動測試控制系統(tǒng)架構(gòu)

      為了對不同指令架構(gòu)的國產(chǎn)特種計算機實施批量測試控制,本文提出了如圖1所示的面向國產(chǎn)特種計算機的自動測試控制系統(tǒng)架構(gòu),主要包括測試控制系統(tǒng)和批量的被測計算機,兩者通過通信網(wǎng)絡(luò)相連。

      圖1 自動測試控制系統(tǒng)架構(gòu)

      測試控制系統(tǒng)主要實現(xiàn)測試用例配置、測試命令生成、測試狀態(tài)監(jiān)測、測試結(jié)果收集、測試報表生成等功能。其中:1)測試配置面板提供測試配置界面,測試配置信息包括每臺被測計算機的名稱、IP地址以及在該被測計算機上需要執(zhí)行的測試項。2)測試命令隊列是一組相互獨立的隊列,每個隊列分別對應到每臺被測計算機,其包含的測試命令根據(jù)配置信息產(chǎn)生。3)控制端通信模塊負責測試控制系統(tǒng)與被測計算機之間的通信,具體包括命令報文的組裝和發(fā)送,以及結(jié)果報文和心跳信息的接收和解析。4)心跳檢測模塊維護每臺被測計算機的心跳記錄,若某一被測計算機的心跳計時發(fā)生了超時,則表明該被測計算機在測試中發(fā)生了故障,此時觸發(fā)相應的心跳超時處理例程,以停止對該被測計算機的控制并產(chǎn)生報警。5)測試數(shù)據(jù)庫保存每臺被測計算機的測試結(jié)果,并對結(jié)果進行對比、合格判定及合格率統(tǒng)計,最終生成測試報表。

      在被測計算機中:1)被測端通信模塊接收來自控制端通信模塊的命令報文,對其進行解析后從測試用例集中調(diào)用相關(guān)的測試用例;此外,被測端通信模塊還負責結(jié)果報文的封裝和發(fā)送。2)心跳計時模塊在測試執(zhí)行過程中,每隔一段時間產(chǎn)生一次心跳事件,使被測端通信模塊向測試控制系統(tǒng)發(fā)送心跳信息,以表明該計算機處于正常的被測試狀態(tài)。3)測試用例集包含計算、內(nèi)存、硬盤、通信等多種測試用例,是基于C語言和POSIX標準接口開發(fā)的可移植的測試程序集,可在不同架構(gòu)的國產(chǎn)處理器上編譯和執(zhí)行,從而確保測試試驗的跨平臺一致性和可比性。

      3 自動測試控制流程

      基于以上自動測試控制系統(tǒng)架構(gòu),特種計算機的批量自動測試過程主要包括以下步驟。

      步驟1:測試控制系統(tǒng)根據(jù)試驗人員在測試配置面板上的配置為每臺被測計算機生成測試命令,并將命令存入測試命令隊列;

      步驟2:控制端通信模塊從測試命令隊列讀取測試命令,按照通信協(xié)議封裝成報文,并經(jīng)通信網(wǎng)絡(luò)將其發(fā)送到與該命令隊列對應的被測計算機;

      步驟3:被測計算機中的被測端通信模塊接收到測試報文后,對報文進行解析得到測試命令,并從測試用例集中選取相應的測試用例執(zhí)行測試;

      步驟4:被測計算機在執(zhí)行測試的過程中,心跳計時模塊每隔一段時間向測試控制系統(tǒng)發(fā)送心跳信息;測試控制系統(tǒng)的心跳檢測模塊利用該信息監(jiān)控被測計算機的運行狀態(tài);

      步驟5:測試用例執(zhí)行完成后,被測端通信模塊根據(jù)通信協(xié)議將測試結(jié)果封裝成報文,反饋給測控制系統(tǒng);

      步驟6:控制端通信模塊接收到結(jié)果報文后對其進行解析,將測試結(jié)果存入測試數(shù)據(jù)庫;

      步驟7:重復步驟2~步驟6,直到測試命令隊列不再包含測試命令;

      步驟8:測控制系統(tǒng)根據(jù)測試數(shù)據(jù)庫中的結(jié)果對多臺被測計算機進行對比、合格判定及合格率統(tǒng)計,并生成測試報表。

      根據(jù)以上過程,本文分別設(shè)計了控制端程序和被測端程序,分別部署于測試控制系統(tǒng)和被測計算機,其執(zhí)行流程和數(shù)據(jù)交互關(guān)系如圖2所示。

      圖2 自動測試控制系統(tǒng)中控制端和被測端程序流程

      4 測試控制通信協(xié)議

      為了支撐以上自動測試控制流程,本文設(shè)計了圖3所示的測試控制通信協(xié)議,用于測試控制端與被測端之間測試命令和結(jié)果的封裝和解析。通信報文各字段的具體含義如下。

      圖3 測試控制通信協(xié)議

      Header:報文頭。標識一個合法報文的開始。

      CMD:測試命令。在命令報文中CMD指定被測計算機需調(diào)用哪些測試用例執(zhí)行測試;在結(jié)果報文中CMD指定當前測試結(jié)果關(guān)聯(lián)到哪一條測試命令。

      Dest Addr:報文目的地址。指定接收該報文的計算機的地址。

      Src Addr:報文源地址。指定發(fā)出該報文的計算機的地址。被測計算機接收到命令報文后向Src Addr反饋心跳信息和測試結(jié)果;測試控制系統(tǒng)利用Src Addr判斷心跳信息或結(jié)果報文來自哪臺被測計算機。

      A:應答位。在命令報文中該位為“0”;在結(jié)果報文中該位為“1”。

      C:完成位。在命令報文中該位為“1”;在結(jié)果報文中,針對任一測試命令CMD的最后一個結(jié)果報文將該位置為“1”,否則將該位置為“0”;

      Serial:報文序號。在命令報文中該字段為“0”;在結(jié)果報文中,該字段從“1”開始編號,后續(xù)依次加1。

      Type:數(shù)據(jù)類型。在包含數(shù)據(jù)Data的報文中,該字段指定數(shù)據(jù)的類型。數(shù)據(jù)類型由測試控制系統(tǒng)與被測計算機約定,可以為浮點、字符、結(jié)構(gòu)體等。

      Length:數(shù)據(jù)長度。該字段指定報文所包含的數(shù)據(jù)Data的長度。

      Data:數(shù)據(jù)。該字段為報文所包含的有效數(shù)據(jù),若報文不包含數(shù)據(jù)則該字段為空。

      Parity:校驗字節(jié)。根據(jù)當前報文中該字段之前的所有字節(jié)按奇校驗算法產(chǎn)生。

      5 測試狀態(tài)監(jiān)測方法

      5.1 控制端基于心跳的狀態(tài)監(jiān)測

      為了在特種計算機批量測試過程中及時發(fā)現(xiàn)被測計算機有可能發(fā)生的宕機等故障,本文采用心跳機制實現(xiàn)對批量被測計算機的狀態(tài)監(jiān)測,控制端基于心跳的測試狀態(tài)監(jiān)測方法如圖4所示。

      圖4 控制端基于心跳的測試狀態(tài)監(jiān)測流程

      在測試控制系統(tǒng)中,控制端程序向某一被測計算機發(fā)送完測試命令之后,立刻為該被測計算機啟動心跳計時器,然后偵聽通信端口以等待接收來自被測端的報文。若接收到的報文為心跳信息,則對心跳計時器進行復位,然后繼續(xù)接收報文;若接收到的報文為結(jié)果報文,則按照報文序列號緩存測試結(jié)果,并且在結(jié)果報文的完成位C被置位的情況下,取消心跳計時。

      如果在心跳計時周期內(nèi)未接收到心跳報文,則心跳計時器將發(fā)生超時,此時會觸發(fā)心跳超時處理從而將該計時器對應的被測計算機標記為故障狀態(tài),并根據(jù)用戶設(shè)定產(chǎn)生報警信息。

      5.2 被測端基于心跳的狀態(tài)反饋

      對應地,被測端也需要定時向控制端反饋心跳報文,以表明該被測計算機處于正常狀態(tài),其心跳反饋流程如圖5所示。

      圖5 接收端測試執(zhí)行與心跳反饋流程

      被測端程序接收到測試命令后,首先創(chuàng)建心跳進程(或線程),然后生成測試用例列表并執(zhí)行測試。心跳進程(或線程)獨立于測試用例執(zhí)行,并按照心跳計時間隔周期性地向測試控制系統(tǒng)發(fā)送心跳報文。等到所有的測試用例都執(zhí)行完畢之后,被測端程序再取消心跳進程(或線程),然后繼續(xù)等待下一測試命令。

      6 自動測試控制系統(tǒng)驗證

      本文設(shè)計了界面化的自動測試控制軟件,其測試配置界面如圖6所示,并搭建了測試驗證環(huán)境,實現(xiàn)了對龍芯、申威等國產(chǎn)特種計算機的測試控制與結(jié)果統(tǒng)計。

      圖6 待測計算機參數(shù)配置界面

      在測試用例方面,本文面向龍芯3A1000和申威410國產(chǎn)特種計算機設(shè)計了并行計算性能、內(nèi)存訪問性能、硬盤讀寫性能、網(wǎng)絡(luò)通信性能等測試程序,測試和驗證國產(chǎn)特種計算機的計算性能、多核加速比、訪存帶寬、存儲帶寬、網(wǎng)絡(luò)帶寬和時延等指標。其中,龍芯 3A1000處理器[7~8]運行在800MHz,申威 410 處理器[9~10]運行在 1.4GHz,以并行計算性能測試程序為例,兩臺特種計算機執(zhí)行多次快速傅里葉變換[11]和最短路徑搜索[12]用例所生成的測試結(jié)果分別如圖7和圖8所示。

      圖7 快速傅里葉變換測試結(jié)果

      圖8 最短路徑搜索測試結(jié)果

      從測試結(jié)果可以看出,由于龍芯3A1000處理器和申威410處理器均為4核處理器,兩種測試用例在雙線程和四線程時能夠取得較好的并行加速比,但在八線程時不僅不能獲得性能提升,其計算時間反而還比四線程時稍有增長,這是由多個線程在處理器上頻繁切換導致的,符合試驗預期。

      以上試驗表明,本文設(shè)計的國產(chǎn)特種計算機自動測試控制系統(tǒng)設(shè)計實現(xiàn)了對龍芯、申威等國產(chǎn)特種計算機的性能測試與結(jié)果采集,并支持測試報表生成與結(jié)果對比,能夠滿足不同架構(gòu)的國產(chǎn)特種計算機批量測試與驗證需求。

      7 結(jié)語

      本文針對國產(chǎn)特種計算機設(shè)計了一種自動測試控制系統(tǒng),實現(xiàn)了測試用例配置、測試命令生成、測試狀態(tài)監(jiān)測、測試結(jié)果收集、測試報表生成等功能。試驗結(jié)果表明,該自動測試控制系統(tǒng)能夠?qū)埿?、申威等不同架?gòu)的國產(chǎn)特種計算機實施批量測試控制,可應用于國產(chǎn)特種計算機批量性能測試或無人值守的長時間可靠性試驗場景,對于提升國產(chǎn)特種計算機測試驗證效率、降低試驗人工成本具有實用意義。

      猜你喜歡
      自動測試測試用例特種
      特種偵察,身懷絕技
      特種偵察游騎兵
      基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
      JXG-50S型相敏軌道電路接收器自動測試臺
      可并行測試的電磁兼容自動測試系統(tǒng)的實現(xiàn)
      電子測試(2018年13期)2018-09-26 03:29:14
      古代“特種戰(zhàn)”:每一場都是一部《戰(zhàn)狼》
      基于混合遺傳算法的回歸測試用例集最小化研究
      關(guān)于某型雷達自動測試系統(tǒng)的幾點認識和建議
      電子制作(2018年11期)2018-08-04 03:26:00
      特種養(yǎng)殖 一技在手 輕松賺錢
      基于依賴結(jié)構(gòu)的測試用例優(yōu)先級技術(shù)
      湘乡市| 来安县| 商城县| 绥芬河市| 南宁市| 巴林左旗| 大兴区| 锡林郭勒盟| 江孜县| 民丰县| 昭通市| 敦煌市| 邻水| 宾阳县| 霍山县| 湖口县| 光泽县| 永泰县| 昆山市| 老河口市| 康定县| 新蔡县| 黔西县| 通山县| 东莞市| 万盛区| 阳新县| 从江县| 汾西县| 三都| 巫溪县| 磐石市| 沙雅县| 海盐县| 泸水县| 云霄县| 太原市| 江北区| 江川县| 三穗县| 丹凤县|