【摘 要】針對(duì)當(dāng)前儀器程控命令測(cè)試過(guò)程中存在的主要問(wèn)題,采用TestCenter快速搭建儀器程控命令測(cè)試軟件,實(shí)現(xiàn)規(guī)范化的儀器程控命令測(cè)試用例設(shè)計(jì)、開(kāi)發(fā)和執(zhí)行。儀器程控命令測(cè)試軟件不僅能降低測(cè)試人員的專(zhuān)業(yè)技術(shù)要求,而且可以大幅度提高測(cè)試工作效率和質(zhì)量。該軟件已成功應(yīng)用于中國(guó)電科第四十一研究所某矢量網(wǎng)絡(luò)分析儀的程控命令測(cè)試中,取得很好的效果。
【關(guān)鍵詞】?jī)x器;程控命令;自動(dòng)測(cè)試;TestCenter
Design and Implementation of Program Command Test Software for Instruments
QIU Tian-hua
(Key Laborator on Electronic Test & Measurement,Qingdao Shandong 266555,China)
【Abstract】The core problems of Program Command Test Software are standard,automatization and efficiency of development.According to the problems,this paper presents a test software based on TestCenter to implement standard and automatization test.This software not only can reduce developer technique request,but also can increase test efficiency and quality.This software has been well applied to Program Command Test of a Vetor Network Analyzer in CETC 41.
【Key words】Instrument;Program Command;Automatic Test;TestCenter
0 引言
當(dāng)前越來(lái)越多的用戶(hù)使用程控命令進(jìn)行儀器遠(yuǎn)程控制,使得儀器生產(chǎn)廠商對(duì)儀器程控命令的測(cè)試越來(lái)越嚴(yán)格。程控命令測(cè)試不但要求儀器研制、生產(chǎn)、出廠等全生命周期測(cè)試,而且要求做到全路徑覆蓋測(cè)試。
由于程控命令的測(cè)試用例設(shè)計(jì)、開(kāi)發(fā)、執(zhí)行工具不統(tǒng)一,測(cè)試過(guò)程自動(dòng)化程度不高,造成測(cè)試工作量和工作難度的增加。程控命令測(cè)試的測(cè)試用例和測(cè)試結(jié)果格式不規(guī)范,導(dǎo)致測(cè)試人員重復(fù)開(kāi)發(fā)測(cè)試用例和記錄測(cè)試結(jié)果。綜上所述,在不增加測(cè)試人員和測(cè)試時(shí)間的情況下,如何對(duì)儀器程控命令進(jìn)行全路徑覆蓋測(cè)試,是儀器生產(chǎn)廠商迫切需要解決的難題。
1 原理
針對(duì)當(dāng)前程控命令測(cè)試存在的問(wèn)題,我們采用TestCenter[1]搭建程控命令測(cè)試軟件來(lái)實(shí)現(xiàn)程控命令規(guī)范化、自動(dòng)化的測(cè)試。TestCenter是由中國(guó)電科第四十一研究所獨(dú)立自主研發(fā)的自動(dòng)測(cè)試平臺(tái)軟件[2],其主要功能接近國(guó)內(nèi)外同類(lèi)產(chǎn)品,具有測(cè)試程序的開(kāi)發(fā)、運(yùn)行和管理功能,并且支持測(cè)試資源管理、測(cè)試報(bào)告生成、SCPI標(biāo)準(zhǔn)[2]等。中國(guó)電科第四十一研究所在程控命令測(cè)試方面積累了大量的經(jīng)驗(yàn),已經(jīng)形成規(guī)范的程控命令測(cè)試用例、測(cè)試結(jié)果格式?;赥estCenter的儀器程控命令測(cè)試軟件實(shí)現(xiàn)原理是利用TestCenter序列編輯器實(shí)現(xiàn)對(duì)儀器程控命令測(cè)試用例的開(kāi)發(fā);利用TestCenter對(duì)測(cè)試資源、測(cè)試程序調(diào)試和執(zhí)行功能,實(shí)現(xiàn)測(cè)試用例的調(diào)試、執(zhí)行和測(cè)試結(jié)果的生成;利用TestCenter對(duì)測(cè)試程序、測(cè)試數(shù)據(jù)的管理實(shí)現(xiàn)對(duì)測(cè)試用例與測(cè)試報(bào)告的管理。
2 設(shè)計(jì)與實(shí)現(xiàn)
由于TestCenter已經(jīng)具有儀器程控命令測(cè)試軟件所需全部功能,所以基于TestCenter的儀器程控命令測(cè)試軟件的設(shè)計(jì)與實(shí)現(xiàn)就變成對(duì)儀器程控命令測(cè)試用例的設(shè)計(jì)、開(kāi)發(fā)和執(zhí)行。
2.1 設(shè)計(jì)測(cè)試用例
測(cè)試用例設(shè)計(jì)是由儀器程控命令測(cè)試專(zhuān)家參照儀器程控手冊(cè)和產(chǎn)品手冊(cè),使用Word、Excel、記事本等常用辦公軟件進(jìn)行規(guī)范化設(shè)計(jì)。測(cè)試專(zhuān)家啟動(dòng)自己熟悉的辦公軟件,參照儀器程控命令測(cè)試用例模板,依次編寫(xiě)測(cè)試用例描述,保存為測(cè)試用例文檔,如圖1所示。測(cè)試用例文檔由規(guī)范的功能描述、命令、延時(shí)三個(gè)元素組成,其中功能描述指儀器程控命令功能的簡(jiǎn)潔描述;命令指具體的儀器命令與命令參數(shù);延時(shí)指儀器命令運(yùn)行后的等待時(shí)間,默認(rèn)單位為毫秒。
2.2 開(kāi)發(fā)測(cè)試用例
測(cè)試專(zhuān)家將設(shè)計(jì)好的測(cè)試用例文檔轉(zhuǎn)交給測(cè)試用例開(kāi)發(fā)人員。測(cè)試用例開(kāi)發(fā)人員參照測(cè)試用例文檔在TestCenter中進(jìn)行測(cè)試用例的開(kāi)發(fā)。測(cè)試用例的開(kāi)發(fā)流程如圖2所示,具體包括新建測(cè)試工程、添加儀器資源、測(cè)試用例分組、編輯測(cè)試用例、調(diào)試測(cè)試用例、檢查是否完成等六個(gè)步驟:
2.2.1 新建測(cè)試工程
啟動(dòng)TestCenter,新建測(cè)試工程。測(cè)試工程文件用于存儲(chǔ)程控命令測(cè)試相關(guān)的所有信息,包括儀器資源、測(cè)試用例、測(cè)試報(bào)告等。
2.2.2 添加儀器資源
打開(kāi)TestCenter中的資源管理軟件,添加儀器硬件和邏輯資源。儀器硬件資源主要配置儀器的程控地址和儀器型號(hào)。邏輯資源是平臺(tái)中使用的虛擬資源,相當(dāng)于在測(cè)試用例和儀器硬件資源之間加入了一個(gè)中間層,用于降低測(cè)試用例與儀器資源的耦合性,實(shí)現(xiàn)測(cè)試用例的復(fù)用。例如對(duì)于程控命令一樣,當(dāng)儀器具體地址或者儀器型號(hào)有更改,只需修改資源配置,測(cè)試用例不須做任何更改。
2.2.3 測(cè)試用例分組
啟動(dòng)序列編輯器,可以進(jìn)行測(cè)試用例的添加、修改、刪除、復(fù)制、粘貼等操作。測(cè)試用例可以按儀器功能進(jìn)行命名,也可以參照測(cè)試用例文檔中的命令分組進(jìn)行命名。通常一個(gè)儀器對(duì)應(yīng)著多個(gè)測(cè)試用例。
2.2.4 編輯測(cè)試用例
通過(guò)拖放程控命令插件[4],雙擊程控命令插件節(jié)點(diǎn),彈出程控命令設(shè)置界面,如圖3所示。首先選擇被測(cè)儀器對(duì)應(yīng)的邏輯資源。其次選擇操作類(lèi)型,進(jìn)行相應(yīng)配置。最后單擊確定按鈕,保存當(dāng)前配置。程控命令插件包含建立儀器通信、執(zhí)行命令、通信設(shè)置、斷開(kāi)儀器通信四種操作類(lèi)型。其中建立儀器通信操作用于建立與儀器會(huì)話(huà)句柄,供其他三個(gè)操作使用;執(zhí)行命令操作用于編輯程控命令列表和批量執(zhí)行編輯好的命令列表,編輯命令就是依次輸入測(cè)試用例描述文檔中的功能描述、命令、延時(shí)等要素信息;通信設(shè)置操作用于修改通信超時(shí)時(shí)間、讀取終止符使能、命令終止符等配置;斷開(kāi)儀器通信操作用于關(guān)閉儀器會(huì)話(huà)句柄。這種基于圖形化的開(kāi)發(fā)方式,不但降低了用戶(hù)編程、儀器通信方面的技術(shù)要求,而且提高了測(cè)試用例的開(kāi)發(fā)效率。
2.2.5 調(diào)試測(cè)試用例
利用TestCenter的調(diào)試功能可以對(duì)測(cè)試用例進(jìn)行斷點(diǎn)、單步、跳過(guò)等調(diào)試運(yùn)行。當(dāng)遇到設(shè)置的斷點(diǎn)時(shí)將暫停運(yùn)行,方便測(cè)試人員對(duì)儀器狀態(tài)、平臺(tái)變量等數(shù)據(jù)進(jìn)行查看和比對(duì)。
2.2.6 檢查是否完成
最后由測(cè)試專(zhuān)家對(duì)調(diào)試好的測(cè)試用例進(jìn)行檢查,首先檢查其測(cè)試用例分組是否覆蓋了儀器功能和測(cè)試用例文檔命令分組,如果沒(méi)有則添加相應(yīng)的測(cè)試用例;其次檢查測(cè)試用例中的測(cè)試命令列表是否覆蓋了測(cè)試用例文檔中的命令和參數(shù),如果沒(méi)有則添加相應(yīng)的命令;最后,由測(cè)試專(zhuān)家確認(rèn)測(cè)試用例是否做到了全路徑覆蓋,如果是則測(cè)試用例開(kāi)發(fā)工作才算真正的結(jié)束。
2.3 執(zhí)行測(cè)試用例
測(cè)試用例開(kāi)發(fā)人員將開(kāi)發(fā)好的測(cè)試用例移交給測(cè)試用例執(zhí)行人員。測(cè)試用例執(zhí)行人員啟動(dòng)TestCenter通用執(zhí)行軟件,設(shè)置好報(bào)表格式和輸出路徑,可以選擇部分或者全部測(cè)試用例進(jìn)行執(zhí)行。測(cè)試用例執(zhí)行完成后,測(cè)試軟件會(huì)自動(dòng)生成測(cè)試報(bào)告并保存到輸出路徑下,測(cè)試報(bào)告內(nèi)容是在測(cè)試用例文檔三個(gè)元素基礎(chǔ)上,增加執(zhí)行后的讀取值、結(jié)果狀態(tài)信息,如圖4所示。
3 總結(jié)
基于TestCenter的儀器程控命令測(cè)試軟件應(yīng)用于中國(guó)電科第四十一研究所某矢量網(wǎng)絡(luò)分析儀的程控命令測(cè)試過(guò)程,測(cè)試時(shí)間降低了50%。該程控命令測(cè)試軟件不但提高程控命令測(cè)試過(guò)程標(biāo)準(zhǔn)化、自動(dòng)化,降低測(cè)試人員的專(zhuān)業(yè)技術(shù)和熟練程度要求,同時(shí)提高了儀器質(zhì)量和用戶(hù)滿(mǎn)意度。
【參考文獻(xiàn)】
[1]宋斌,方葛豐,劉毅.自動(dòng)測(cè)試系統(tǒng)軟件平臺(tái)TestCenter體系結(jié)構(gòu)設(shè)計(jì)與分析[J].測(cè)控技術(shù),2013,8.
[2]方葛豐,劉毅,等.自動(dòng)測(cè)試系統(tǒng)軟件平臺(tái)技術(shù)[J].儀器儀表,2009,10.
[3]Standard Commands for Programmable Instruments(version 1999.0)[S].printed in USA,1999,3.
[4]方鵬,劉毅,邱田華.TestCenter中儀器控制的設(shè)計(jì)與實(shí)現(xiàn)[J].科技視界,2013,4.
[責(zé)任編輯:田吉捷]