• 
    

    
    

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

      基于半實物仿真的抄表系統(tǒng)自動化測試平臺設(shè)計

      2022-12-26 12:53:42劉宏偉
      計算機(jī)測量與控制 2022年12期
      關(guān)鍵詞:測試用例腳本工裝

      劉宏偉

      (陜西交通控股集團(tuán)有限公司 寶雞分公司,陜西 寶雞 721013)

      0 引言

      隨著智能電網(wǎng)的快速普及,智能化的抄表技術(shù)日益成熟,相比于過去費時費力的人工抄表,目前普遍使用的低壓集中抄表系統(tǒng)具有快速、準(zhǔn)確的優(yōu)點,且可以利用電力消費數(shù)據(jù)進(jìn)行統(tǒng)計分析,完善階梯電價政策,預(yù)測國民經(jīng)濟(jì)發(fā)展水平[1]。由于電力計量涉及消費者的切身利益,對差錯具有極低的容忍度,因此,保證抄表系統(tǒng)的穩(wěn)定性和計量準(zhǔn)確性就顯得尤為重要。

      現(xiàn)今國內(nèi)的抄表系統(tǒng)生成廠家眾多,各地電網(wǎng)的輸配電結(jié)構(gòu)也存在差異,故抄表系統(tǒng)在上市前需要進(jìn)行完備、嚴(yán)苛和有效的測試[2]。目前主流的測試平臺大多采用現(xiàn)場實景測試,人工控制并再現(xiàn)各種用例,功能覆蓋面和測試效率都難以適應(yīng)當(dāng)前快速發(fā)展的電力行業(yè)。隨著集中抄表系統(tǒng)整合的功能越來越多,測試工作量十分龐大,每次系統(tǒng)升級需要完成的測試條目高達(dá)2 400多條,如此龐大的工作很難依靠純?nèi)斯ね瓿?,因此,引入自動化測試將是未來的一個主流方向。

      文獻(xiàn)[3]分析了抄表核算自動化模式的構(gòu)成要素,以及各模塊之間的耦合關(guān)系。文獻(xiàn)[4]針對電力線傳輸?shù)牟环€(wěn)定性,通過軟件方式建立信道模擬平臺,實現(xiàn)對載波通信性能的測試,但該平臺全部使用軟件模擬,盡管開發(fā)效率高,也可以實現(xiàn)整個測試流程的自動化,但很難重現(xiàn)真實場景,尤其是復(fù)雜時變的電磁環(huán)境,測試準(zhǔn)確度難以保證。而采用全實物測試,不同廠家開發(fā)的抄表系統(tǒng)中的各模塊之間存在強(qiáng)耦合性,開放的測試I/O通道少,需要為每個版本的系統(tǒng)獨立開發(fā)一套測試設(shè)備和測試軟件,存在測試設(shè)備價格昂貴、開發(fā)周期長、測試人員的專業(yè)化要求高等缺點[5]。而半實物仿真就可以很好的平衡二者的關(guān)系,文獻(xiàn)[6]根據(jù)IEEE 1641和IEEE 1671兩個面向信號自動測試系統(tǒng)的國際標(biāo)準(zhǔn),設(shè)計了基于自動測試標(biāo)記語言(ATML)的半實物仿真測試標(biāo)準(zhǔn)族,定義了測試信息交換的XML Scheme 模式,但并沒有針對行業(yè)應(yīng)用給出具體實操說明。

      文獻(xiàn)[7]提出基于RT-LAB實時仿真系統(tǒng)的半實物仿真測試平臺。將待測對象的硬件通過I/O物理接口和Modbus通信連接到RT-LAB測試平臺,實現(xiàn)協(xié)同仿真,但由于采用傳統(tǒng)的集中式過程控制模式,占用系統(tǒng)資源較多。

      文獻(xiàn)[8]提出了一種基于分布式仿真測試環(huán)境的嵌入式軟件自動化測試系統(tǒng);該系統(tǒng)以實時仿真機(jī)為核心,模塊化定制接口,實現(xiàn)對系統(tǒng)動態(tài)特性的半實物仿真軟硬件環(huán)境,很好地解決了嵌入式系統(tǒng)內(nèi)存資源較少,與硬件緊密相關(guān)等問題。

      為了盡可能減少測試平臺的開銷,通過測試用例的腳本化,極大地減輕測試開發(fā)人員的負(fù)擔(dān),測試腳本的可移植性也保證了測試平臺的可重用性,提高了軟件系統(tǒng)的可維護(hù)性[9]。

      文獻(xiàn)[10]采用“一主多從”的分布式體系結(jié)構(gòu),模擬變電站的運(yùn)行環(huán)境,并采用腳本技術(shù)實現(xiàn)自動化的回歸測試。

      文獻(xiàn)[11]提出一套應(yīng)用于列車運(yùn)行監(jiān)控系統(tǒng)的基于半實物仿真技術(shù)和測試腳本技術(shù)的自動化測試系統(tǒng),可以極大提高測試效率。

      針對目前自動測試平臺和待測抄表系統(tǒng)耦合性高、測試平臺適應(yīng)面窄、抄表系統(tǒng)功能升級后兼容性差的問題,本文借鑒文獻(xiàn)[6]中的半實物仿真的思路,并遵從XML Scheme模式,開發(fā)一種基于嵌入式通用化、自動化測試平臺,將待測單元與測試平臺分離,通過統(tǒng)一的工裝協(xié)議,降低各模塊之間的耦合性。另外,本文借鑒文獻(xiàn)[9]和[11]中的模塊化的腳本測試技術(shù),通過測試腳本的可移植性和可重用性,提高測試平臺的普適性,縮短了功能升級后的平臺開發(fā)周期。同時,增加測試用例的覆蓋面和靈活性,提高測試效率和準(zhǔn)確度。

      1 測試平臺的總體設(shè)計框架

      低壓集中抄表系統(tǒng)主要包括:載波電表、載波模塊(STA,station)、中央?yún)f(xié)調(diào)器(CCO, central coordinator)和集中器,四個模塊之間的邏輯關(guān)系如圖1所示。載波電表主要實現(xiàn)電力的計量;載波模塊主要將計量數(shù)據(jù)調(diào)制到電力載波進(jìn)行通信;中央?yún)f(xié)調(diào)器實現(xiàn)多路載波信號的多路復(fù)用;而集中器主要實現(xiàn)本小區(qū)數(shù)據(jù)的集中上傳。

      圖1 低壓集中抄表系統(tǒng)示意圖

      測試平臺的主要工作是根據(jù)不同的應(yīng)用場景和設(shè)計用例,測試上述模塊之間在數(shù)據(jù)鏈路層的功能完備性和魯棒性,以及相應(yīng)的性能。

      具體的測試內(nèi)容和對應(yīng)的國標(biāo)協(xié)議如下:

      1)載波電表與STA的交互測試,DL/T645-2007協(xié)議(簡稱645協(xié)議)[12]。

      2)STA與CCO的交互測試,Q/GDW 11612.43-2016協(xié)議(簡稱11612協(xié)議)[13]。

      3)CCO與集中器的交互測試,Q/GDW1376.2-2013協(xié)議(簡稱1376協(xié)議)[14]。

      4)集中器與STA透傳報文交互測試。

      本文針對上述4種測試要求,設(shè)計一套由待測的硬件單元和自研的客戶端軟件組成的自動化測試平臺。平臺采用半實物仿真的服務(wù)器-客戶端(C/S)架構(gòu)[6],總體結(jié)構(gòu)如圖2所示,圖中雙向箭頭為報文交互方向。圖中左半部分是以實物形式出現(xiàn)的硬件測試單元,既包括測試對象STA和CCO,也包括基于ARM的測試服務(wù)器;右半部分是安裝在計算機(jī)中的客戶端軟件,用于模擬測試的信源和信宿。而工裝協(xié)議是連接硬件測試單元和客戶端軟件的橋梁,也是本文重點研究的內(nèi)容。

      圖2 測試平臺邏輯架構(gòu)圖

      測試平臺最主要的測試項目是協(xié)議一致性測試,測試流程如圖2中的①、②、⑦序號所示。首先,客戶端軟件中的虛擬電表將根據(jù)不同的測試用例,通過測試腳本按步驟模擬電表發(fā)出報文信號;然后,經(jīng)過嵌入式控制軟件,將初始報文轉(zhuǎn)換為工裝協(xié)議報文后,經(jīng)載波模塊STA發(fā)給協(xié)調(diào)器CCO;最后,客戶端軟件中的虛擬集中器,根據(jù)測試腳本自動采集返回數(shù)據(jù),并根據(jù)測試用例將測試結(jié)果與預(yù)設(shè)結(jié)果進(jìn)行比對,實現(xiàn)回歸測試目標(biāo),就可以測試STA和CCO的性能,發(fā)現(xiàn)存在的缺陷和不足,進(jìn)而改進(jìn)設(shè)計。上述的測試過程是雙向的,可以是①到⑦,也可以是⑦到①。

      該測試平臺具有以下優(yōu)點:

      1)具有一般C/S架構(gòu)所具有的交互性強(qiáng)、存取安全、響應(yīng)速度快、支持大數(shù)據(jù)處理等優(yōu)點。

      2)基于Modbus協(xié)議規(guī)范,將進(jìn)出STA和CCO的通訊報文統(tǒng)一為工裝協(xié)議,統(tǒng)一并減少硬件接口,降低硬件測試單元和客戶端軟件之間的耦合度。

      3)硬件測試單元,主要實現(xiàn)待測對象STA和CCO的交互,這部分涉及大量的時序電路和電磁兼容,用硬件實物測試,可以反映真實抄表環(huán)境下的傳輸時延和電磁干擾,充分暴露故障隱患。

      4)因為客戶端軟件已經(jīng)集成了虛擬電表和虛擬集中器,這是測試平臺的信源和信宿,若要添加新的測試用例,只需根據(jù)新的測試功能,在客戶端軟件上編寫特定的報文腳本,調(diào)用工裝協(xié)議中已有的API接口函數(shù),而無須重新開發(fā)程序,提高了平臺的開放性,縮短了開發(fā)周期。

      2 硬件測試單元設(shè)計

      硬件測試單元包括三部分:待測單元,強(qiáng)電控制單元(簡稱:強(qiáng)電單元)和弱電測試控制單元(簡稱:弱電單元),其硬件結(jié)構(gòu)如圖3所示。

      圖3 硬件結(jié)構(gòu)圖

      待測單元包括載波模塊STA和中央?yún)f(xié)調(diào)器CCO,是測試平臺的測試對象。

      強(qiáng)電單元的功能包括兩部分,一方面為其他單元提供工作電壓,將AC220 V變?yōu)橹绷麟妷汉?,為STA和CCO提供DC12 V,為ARM核心板提供DC3.3 V。另一方面,AC220 V也是低壓寬帶電力線載波的通信媒介。

      弱電單元是測試平臺的核心,主要功能包括:

      1)通過ARM控制STA和CCO:首先,ARM核心板發(fā)出電氣控制指令,在電氣控制模塊中包括4個繼電器,其中兩個繼電器用來控制CCO和STA的DC12 V工作電源通斷,另兩個繼電器用來控制CCO和STA的AC220 V載波電力線的通斷。

      2)通過RS485接口和待測單元通信:ARM輸出的控制信號,經(jīng)兩路TTL轉(zhuǎn)RS485接口電路,并基于UART協(xié)議,通過控制引腳電平對STA和CCO進(jìn)行通訊或硬件復(fù)位,實現(xiàn)各種用例的測試。

      3)通過以太網(wǎng)和客戶端連接:ARM核心板通過以太網(wǎng)模塊和安裝客戶端軟件的計算機(jī)連接,使用W5500芯片的SPI接口來實現(xiàn)TCP/IP協(xié)議棧,實現(xiàn)基于工裝協(xié)議的測試通信[15]。

      3 工裝報文協(xié)議

      客戶端軟件需要通過硬件測試單元中的弱電單元控制待測單元,這就需要根據(jù)不同的測試用例,發(fā)送不同的測試指令。既要控制STA和CCO的電源、波特率、硬件復(fù)位等底層硬件,又需要對通信的報文進(jìn)行打包和轉(zhuǎn)發(fā)操作。

      由于在通信過程中涉及到的硬件接口、通信協(xié)議和測試協(xié)議較多,如果采用分離式的思路,在客戶端對協(xié)議的解析非常復(fù)雜,因此有必要設(shè)計一套通用的通信協(xié)議??紤]到CCO和STA采用一對多的主從結(jié)構(gòu),且物理接口采用RS485差分信號以支持長距離傳輸,因此,本文設(shè)計的工裝報文協(xié)議通過Modbus協(xié)議規(guī)范將不同類型的協(xié)議報文統(tǒng)一打包和轉(zhuǎn)發(fā),在客戶端根據(jù)協(xié)議類型字段來區(qū)分不同的協(xié)議報文[16]。報文類型的定義如表1所示。

      表1 報文類型的定義

      Modbus協(xié)議主要包括起始符、幀長度、報文類型、報文地址、數(shù)據(jù)域起始符、數(shù)據(jù)域及CRC校驗和結(jié)束符8部分。工裝報文協(xié)議中的字段長度和具體功能的定義如下:

      1)起始符:0xED,代表一幀報文開始。

      2)幀長度:2字節(jié),(報文類型+報文地址+數(shù)據(jù)域起始符+數(shù)據(jù)域+校驗)的總字節(jié)數(shù)。

      3)報文類型:用1字節(jié)來定義13個報文類型的功能,如表1中所示。

      4)報文地址:報文傳輸對應(yīng)的設(shè)備地址,此處對應(yīng)槽位編號,0xEE表示工裝平臺,0x01代表載波模塊,0x02代表中央?yún)f(xié)調(diào)器。

      5)數(shù)據(jù)域起始符:0xEE,增加起始符,用以降低解析錯誤概率。

      6)數(shù)據(jù)域:長度不確定,由該報文對應(yīng)的功能類型決定。

      7)CRC校驗:報文之前所有字節(jié)直接求和,取8bit,忽略溢出(從起始符開始)。

      8)結(jié)束符:0xEE,代表一幀報文結(jié)束。

      4 軟件系統(tǒng)設(shè)計

      自動化測試平臺的軟件包括部署在硬件測試單元ARM核心板的嵌入式控制軟件和安裝在遠(yuǎn)程計算機(jī)的客戶端軟件。

      4.1 嵌入式控制軟件

      嵌入式控制軟件是連接硬件測試單元和遠(yuǎn)程客戶端的橋梁,是實現(xiàn)工裝報文協(xié)議的載體,也是半實物仿真的關(guān)鍵。它作為C/S架構(gòu)中的服務(wù)器,一方面模擬產(chǎn)生虛擬電表和集中器,連接硬件測試單元,另一方面響應(yīng)客戶端軟件的請求。虛擬的客戶端指令通過嵌入式軟件來控制實體的STA和CCO。

      嵌入式控制軟件的主要功能包括:

      1)嵌入式軟件的初始化、與客戶端軟件建立TCP連接。

      2)接收并轉(zhuǎn)發(fā)客戶端下發(fā)的指令,封裝為工裝協(xié)議報文后,發(fā)給待測單元,最后將測試響應(yīng)反饋給客戶端。從信號與系統(tǒng)的角度看,對應(yīng)自動化測試平臺的輸入激勵和輸出響應(yīng)。

      客戶端軟件下發(fā)的工裝報文主要有三類。

      (1)虛擬電表回復(fù)給STA的645協(xié)議報文,槽位編號為0x01;

      (2)虛擬集中器發(fā)送給CCO的1376協(xié)議報文,槽位編號為0x02。

      (3)客戶端軟件對工裝平臺的命令報文,槽位編號為0xEE。

      其中第(1)種和第(2)種報文屬于透傳命令,報文類型為0x01,第三種屬于工裝控制命令。當(dāng)ARM核心板收到客戶端的工裝協(xié)議報文后,需要對報文中包含的3種不同協(xié)議進(jìn)行解析處理,接收到客戶端軟件后的報文處理流程如圖4所示。

      圖4 工裝報文處理流程

      3)ARM核心板收發(fā)工裝報文:當(dāng)ARM核心板通過兩路RS485分別收到STA的645協(xié)議報文和CCO的1376協(xié)議報文時,首先判斷報文的合法性,然后將它們打包為工裝協(xié)議報文,此時報文類型為0x01,槽位編號對應(yīng)報文來源設(shè)備(虛擬電表或虛擬集中器)的編號。

      4.2 客戶端軟件

      客戶端軟件安裝在遠(yuǎn)程計算機(jī),主要實現(xiàn)自動化功能測試和腳本測試。即運(yùn)用客戶端軟件運(yùn)行的測試腳本來實現(xiàn)對測試流程的完全控制,并通過測試結(jié)果和預(yù)期結(jié)果的差異對比,發(fā)現(xiàn)抄表系統(tǒng)存在的功能缺陷或性能短板。客戶端軟件的功能包括四部分。

      1)人機(jī)交互:操作人員根據(jù)測試用例,通過交互界面,下達(dá)測試指令;

      2)工裝控制:連接工裝,工裝停/上電,485通訊波特率切換;

      3)腳本管理:包括腳本的下載、編輯和執(zhí)行操作。

      4)常規(guī)功能:包括用戶圖形界面、測試信息監(jiān)視、測試報告存儲管理、通信設(shè)置等模塊。

      客戶端軟件的主要功能如圖5所示,其中:系統(tǒng)主控模塊主要用于協(xié)調(diào)整個測試平臺的正常運(yùn)作,根據(jù)用戶要求選擇測試方式和測試用例;測試用例管理模塊,用于控制不同測試方式下測試用例的樹形拓?fù)?;端口配置模塊,用于用戶根據(jù)相關(guān)協(xié)議完成對端口參數(shù)的配置;測試進(jìn)度更新模塊,用于實時更新UI中所選測試用例的執(zhí)行進(jìn)度,包括已執(zhí)行測試?yán)齻€數(shù),已失敗測試?yán)齻€數(shù),已用時長等信息;文件管理模塊,用于管理測試用例信息、測試日志和測試報告。

      圖5 客戶端軟件的功能結(jié)構(gòu)

      測試指令適配器主要完成工裝協(xié)議報文的解析,它是客戶端軟件和被測對象的數(shù)據(jù)交互接口,它是雙向測試接口。若被測對象為CCO,則用軟件模擬集中器;若被測對象為STA,則用軟件模擬電能表。

      4.3 客戶端軟件報文處理流程

      客戶端軟件報文處理部分主要分為報文接收處理和下發(fā)處理兩部分。

      4.3.1 報文接收處理模塊

      客戶端軟件運(yùn)行時,會不斷收到來自硬件測試單元的報文,這些報文根據(jù)功能分為三類,分別為工裝確認(rèn)報文、透傳1376協(xié)議報文和透傳645協(xié)議報文。在對報文進(jìn)行下一步處理前,需要先判斷報文是否屬于上述這三類,即判斷工裝協(xié)議報文的合法性,然后再分發(fā)到合適的異步隊列中等待處理。

      本測試平臺使用基于生產(chǎn)者-消費者模式的異步隊列,報文分發(fā)處理模塊作為生產(chǎn)者,所有需要驗證報文回復(fù)的部分均作為消費者。通過3個異步隊列作為倉庫,也就是緩沖區(qū)??梢越档蛨笪慕邮蘸蛨笪奶幚淼臅r序相關(guān),達(dá)到各環(huán)節(jié)之間的解耦。這樣設(shè)計的原因在于:在測試過程中,生產(chǎn)數(shù)據(jù)和處理數(shù)據(jù)的速度不同,生產(chǎn)數(shù)據(jù)較快時,可以將消費者來不及處理的數(shù)據(jù)暫存于緩沖區(qū)中,等待生產(chǎn)者的速度慢下來,消費者再慢慢處理隊列中的緩存數(shù)據(jù)。報文接收處理流程如圖6所示。

      圖6 報文分發(fā)處理流程圖

      4.3.2 報文下發(fā)處理模塊

      客戶端軟件運(yùn)行時,將產(chǎn)生的3種協(xié)議類型報文打包為工裝協(xié)議報文,統(tǒng)一下發(fā)給硬件測試單元。3種協(xié)議類型報文包括:由工裝產(chǎn)生的工裝控制類報文;由虛擬集中器產(chǎn)生的1376協(xié)議報文;由虛擬電表產(chǎn)生的645協(xié)議報文。這3種報文的處理流程如圖7所示。

      圖7 報文處理下發(fā)流程圖

      4.4 腳本系統(tǒng)

      測試腳本的開發(fā)語言的不同,將直接影響測試平臺的開銷和性能。測試用例的腳本化可極大地減輕測試開發(fā)人員的負(fù)擔(dān),提高軟件系統(tǒng)的可維護(hù)性。同時,測試腳本的可移植性也保證了測試平臺的可重用性。本測試平臺采用Python語言,Python是一種具有解釋性,編譯性、互動性和面向?qū)ο蟮哪_本語言,同時具有很強(qiáng)的數(shù)據(jù)處理能力和跨平臺特性,其中Python具有豐富和強(qiáng)大的庫,常被稱為膠水語言,能夠把用其他語言編寫的各個模塊粘合在一起,使得模塊之間具有很強(qiáng)的粘合度,特別適用于腳本系統(tǒng)的開發(fā)[17]。

      本平臺以基礎(chǔ)測試塊(Block)生成測試用例的方式,通過測試人員在系統(tǒng)UI界面上直接進(jìn)行拖拽,將多個Block進(jìn)行組合,形成一個完整的測試用例。通過后臺運(yùn)行引擎,對UI界面的內(nèi)容進(jìn)行翻譯、保存和運(yùn)行[18]。每個Block都具有統(tǒng)一的輸入輸出格式,保證了Block間的數(shù)據(jù)流動。

      首先,本平臺選用XML(可擴(kuò)展標(biāo)記語言)作為測試腳本的保存和讀取、上傳和重載語言。XML是一種用于標(biāo)記電子文件、使其具有結(jié)構(gòu)性的標(biāo)記語言,具有極其簡單的語法規(guī)則和嚴(yán)密的數(shù)據(jù)格式,被廣泛應(yīng)用數(shù)據(jù)保存和數(shù)據(jù)交換[19]。采用XML語言,不僅保證了測試腳本的關(guān)鍵信息能夠在傳遞過程中不丟失,而且在測試腳本的XML文件中記錄各個Block的連接方式和各個模塊的參數(shù)配置信息,方便不同測試人員對測試流程的重現(xiàn)。

      其次,利用Python的面向?qū)ο筇匦?,將Block進(jìn)行對象實例化,而XML保存的各個關(guān)鍵信息作為Block對象實例化的初始化條件,這樣在開發(fā)和重新載入過程就能保證各個Block的關(guān)鍵信息的一致性。

      最后,利用UUID(通用唯一識別碼)的唯一性,在模塊第一次實例化時將系統(tǒng)當(dāng)前UUID作為該Block實例的唯一標(biāo)識碼,后續(xù)再進(jìn)行測試用例的傳遞和重用時,該標(biāo)識碼都不再變化,保證了每個測試用例中Block實例的唯一性和不變性。腳本測試流程如圖8所示。

      圖8 腳本測試流程圖

      5 典型應(yīng)用和效果分析

      本測試平臺的典型應(yīng)用是協(xié)議一致性測試,根據(jù)11612協(xié)議、645協(xié)議和1376協(xié)議的具體內(nèi)容設(shè)計測試用例,并通過半實物仿真平臺進(jìn)行測試,判別該協(xié)議的實現(xiàn)是否與其協(xié)議的標(biāo)準(zhǔn)描述一致。主要過程如圖2所示,在虛擬的STA和虛擬集中器模擬生成輸入激勵,并通過工裝協(xié)議,輸入到實物待測單元,并對測試輸出響應(yīng)進(jìn)行一致性評判。同時跟蹤測試日志信息,將所有測試log進(jìn)行存儲,并自動生成測試報告。

      根據(jù)不同的測試目標(biāo)以及適用協(xié)議的不同研發(fā)階段,設(shè)計了單模塊測試、板級測試和虛擬測試3個層次。

      單模塊測試是從微觀角度,關(guān)注物理層的集成功能和協(xié)議,通常用于故障檢測和判定,可直接使用板級測試下高層協(xié)議的測試用例。

      板級測試是從中觀的角度,關(guān)注單元級的功能,在虛擬ARM模式下運(yùn)行開發(fā)的所有單元測試用例,測量時可直接通過USB或網(wǎng)口與客戶端軟件進(jìn)行數(shù)據(jù)交互。同一板級測試腳本可跨平臺重復(fù)使用,無需再次開發(fā)。

      虛擬測試是從宏觀的角度,關(guān)注整個系統(tǒng)的功能相應(yīng),忽略物理層的具體實現(xiàn),測試整體集成協(xié)議的一致性,效率高,但對細(xì)節(jié)的分析不夠。虛擬測試將單層協(xié)議(包括應(yīng)用層、網(wǎng)絡(luò)管理子層或媒體訪問控制層) 或高層集成協(xié)議加載于通用虛擬ARM中。

      3種測試方法的區(qū)別體現(xiàn)在對被測模塊的自動上下電控制及端口識別方面。

      虛擬測試方式要先啟動并控制客戶端軟件,并讀取隨機(jī)生成的測試點及跟蹤(Trace)端口,再更新端口配置文件中的端口信息。

      板級測試和單模塊測試方式要先將待測設(shè)備與安裝客戶端軟件的PC機(jī)進(jìn)行連接,隨后讀取測試用例在PC上映射的端口,并更新端口配置文件中的端口信息,再控制被測對象上下電。 另外,單模塊測試還需要額外控制矢量信號發(fā)生器。因此要實現(xiàn)全自動測試,系統(tǒng)要根據(jù)不同測試方式及被測對象自動控制對應(yīng)測試方式下被測對象的上下電、端口自動讀取、端口配置文件的更新及信號發(fā)生器。

      客戶端軟件運(yùn)行后,首先通過Socket與硬件測試單元建立連接,測試系統(tǒng)和被測CCO的數(shù)據(jù)交互流程如圖9所示。

      圖9 數(shù)據(jù)交互流程圖

      測試平臺運(yùn)行主界面如圖10所示,可以通過UI界面實時查看報文傳輸內(nèi)容和運(yùn)行狀態(tài)。

      圖10 客戶端軟件運(yùn)行界面

      圖11是測試低壓電力集中抄表系統(tǒng)的用戶電力信息瞬時凍結(jié)功能的一個測試腳本,該腳本的主要功能是瞬間凍結(jié)電表所有的電力信息,并讀取電表記錄的用電基礎(chǔ)信息。

      圖11 腳本界面

      本測試平臺可在運(yùn)行時實時保存報文信息和腳本運(yùn)行信息,保證測試信息不會丟失,便于查詢并分析歷史測試信息。測試腳本在運(yùn)行后部分通信報文記錄如圖12所示。

      圖12 運(yùn)行腳本后的數(shù)據(jù)記錄

      當(dāng)腳本以XML格式進(jìn)行保存時,此時會在測試平臺的XML目錄中生成如圖13所示的文本。

      圖13 XML格式的腳本

      經(jīng)過實際工程應(yīng)用,本測試平臺具有以下優(yōu)點:

      1)測試效率提高75%:針對國內(nèi)各個地區(qū)的不同功能要求,本測試平臺可以在保留已有的Block模塊的情況下開發(fā)新的模塊,同時可利用已有模塊組成新的測試腳本,避免重復(fù)開發(fā)已有功能,縮短了新測試項目的開發(fā)時間。在同等條件下,相比人工測試,本測試平臺的測試效率提高75%。

      2)測試準(zhǔn)確度提高40%:本測試平臺會保存所有通信報文和測試結(jié)果報告,當(dāng)測試不通過時,測試平臺會迅速定位到測試不通過的模塊,不會遺漏任何測試細(xì)節(jié)。針對低壓集中抄表系統(tǒng)功能版本更迭較快的特性,本測試平臺也可迅速做出調(diào)整。在執(zhí)行相同的測試任務(wù)時,相比人工測試,本測試平臺的測試準(zhǔn)確度提高了40%。

      3)功能覆蓋面廣,開發(fā)周期短:目前本測試平臺的功能已經(jīng)完備,不僅包含了常用功能,還涵蓋了使用國家電網(wǎng)協(xié)議的多數(shù)省市測試平臺中的特殊功能。在功能測試中,無論是超高次循環(huán)次數(shù)的壓力測試,還是單個的功能性能測試,都可用本測試平臺來完成,大幅減少了因重復(fù)功能開發(fā)而造成的人力、物力的浪費,縮短開發(fā)周期。

      6 結(jié)束語

      本文針對低壓集中抄表系統(tǒng),設(shè)計了一套自動化測試平臺。首先,本平臺引入半實物仿真的C/S模式,在測試準(zhǔn)確度和測試效率方面取得了良好的折中;其次,設(shè)計了統(tǒng)一的工裝協(xié)議,將不同協(xié)議產(chǎn)生的報文進(jìn)行統(tǒng)一的打包和下發(fā),降低硬件接口的個數(shù),提高了平臺的普適性;最后,創(chuàng)新性地設(shè)計了模塊化的腳本系統(tǒng),通過多個基本測試塊組合生成新的測試腳本,在降低開發(fā)測試腳本難度的同時,增加了測試執(zhí)行人員的靈活性,并縮短了開發(fā)周期。

      猜你喜歡
      測試用例腳本工裝
      工裝靴
      酒駕
      軸鉆斜孔工裝設(shè)計
      安奇奇與小cool 龍(第二回)
      基于SmartUnit的安全通信系統(tǒng)單元測試用例自動生成
      一種取出塑件殘余量的輔助工裝
      模具制造(2019年4期)2019-06-24 03:36:46
      數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
      電子測試(2018年14期)2018-09-26 06:04:24
      基于混合遺傳算法的回歸測試用例集最小化研究
      快樂假期
      工裝風(fēng)衣
      Coco薇(2015年10期)2015-10-19 12:12:32
      太保市| 方城县| 潮州市| 湄潭县| 古交市| 兖州市| 棋牌| 罗源县| 永新县| 神农架林区| 甘谷县| 界首市| 拉孜县| 团风县| 新民市| 龙里县| 客服| 江西省| 洛宁县| 平罗县| 纳雍县| 枣庄市| 阿坝县| 灵宝市| 达日县| 荆门市| 乌苏市| 东宁县| 曲阜市| 宝丰县| 咸丰县| 盈江县| 靖州| 佛教| 石狮市| 晴隆县| 临泉县| 永年县| 南宫市| 东兰县| 奉化市|