周林霞
摘要 針對人工檢測EPU10A板卡存在時間長、效率低的問題,提出了自動化檢測EPU10A板卡。自動化檢測EPU10A板卡系統(tǒng)的結(jié)構(gòu)主要包括測試軟件(運行在PC機(jī)中)和測試鏡像(運行在被測EPU10A板卡中)兩大部分。測試軟件部分主要包括網(wǎng)口檢測模塊、串口檢測模塊、配置模塊、下裝模塊、重啟EPU10A模塊、報文模塊、報告模塊、測試流程控制模塊、操作說明模塊。測試鏡像部分主要完成EPU10A板卡引導(dǎo)功能、網(wǎng)口通信、串口通信、PCI功能檢測、VME并行總線檢測、SCSI串行總線檢測、VME自定義I/O檢測等功能。自動化檢測EPU10A板卡系統(tǒng)能一鍵實現(xiàn)整個EPU10A板卡的測試過程并自動的產(chǎn)生測試報告,整個過程不需要人工干預(yù)。
[關(guān)鍵詞]自動化 測試軟件 測試鏡像 檢測模塊
上世紀(jì)80年代,我國就開始了檢測的綜合化、自動化研究。通用自動化測試系統(tǒng)的研制經(jīng)歷了從引進(jìn)、仿制到自行研制的過程。總體上看,我國已經(jīng)形成了綜合自動測試“通用化、綜合化、模塊化”的發(fā)展雛形。
自動化檢測EPU10A板卡系統(tǒng)和人工測試相比在性價比、測試速度和可維護(hù)性等方面都均有明顯的優(yōu)勢。EPU10A板卡生產(chǎn)完使用前主要檢測網(wǎng)口通信、串口通信、PCI功能檢測、VME并行總線檢測、SCSI串行總線檢測、VME自定義I/O檢測等功能檢測。人工對EPU10A板卡進(jìn)行檢測,費時費力、出錯率高,所有提出了自動化檢測EPU10A板卡。自動化檢測EPU10A板卡可以降低人為因素對測試過程的干擾、排除測試的隨機(jī)性和盲目性、降低冗余、減少遺漏、可提高測試效率和保證測試的可靠性。
1 系統(tǒng)設(shè)計
1.1總體框架設(shè)計
自動化檢測EPU10A板卡系統(tǒng)的框架結(jié)構(gòu)主要包括測試軟件和測試鏡像(VxWorks)兩大部分,測試鏡像運行于被測的EPU10A板卡中,測試軟件運行于PC機(jī)中。自動化檢測EPU10A板卡的系統(tǒng)總體框架如圖1。
2 系統(tǒng)組成
2.1 測試鏡像
測試鏡像就是圖1的下面的部分,其運行在被測的EPU10A板卡中,測試軟件與測試鏡像主要通過網(wǎng)口、串口進(jìn)行通信,EPU10A板卡在正常引導(dǎo)功能下運行測試鏡像程序,測試鏡像主要完成PCI檢測和VME檢測,其中VME檢測又有VME并行總線檢測、SCSI串行總線檢測、VME自定義I/O檢測。在檢測完成的情況下測試鏡像把這些檢測信息通過串口、網(wǎng)口(報文)傳送給測試軟件。
2.2 測試軟件
測試軟件是圖1的上面的部分,其運行在PC機(jī)中。測試軟件主要分為三層,底層部分主要通過PC機(jī)的串口、網(wǎng)口完成與運行在被測EPU10A板卡的測試鏡像通信。測試軟件的中層主要為測試模塊,其包括網(wǎng)口檢測模塊、串口檢測模塊、保存原有配置模塊、刷新缺省配置模塊、還原原有配置模塊、下裝測試程序模塊、重啟EPU10A板卡模塊、收發(fā)報文模塊、生成報告模塊、操作說明模塊等。測試軟件的頂層是流程控制模塊,流程控制模塊控制著整個測試流程,從下命令開始測試EPU10A板卡到測試報告的生成的整個流程。流程控制模塊在控制整個流程的同時,并依次的調(diào)用中層的小模塊來完成整個測試。
3 測試流程
自動化檢測EPU10A板卡系統(tǒng)的流程如圖2,自動化檢測EPU10A板卡系統(tǒng)在登陸以后,一鍵點擊自動化測試EPU10A,系統(tǒng)就開始進(jìn)行EPU10A板卡自動化測試。測試時首先調(diào)用流程控制模塊,流程控制模塊在控制整個流程的同時,依次的調(diào)用中層的小模塊來完成整個測試。
在整個EPU10A板卡自動化測試的流程中,串口、網(wǎng)口通信功能要正常,如果不能正常通信,停止測試并彈出提示測試人員重新插緊串口、網(wǎng)口的窗口,測試人員重新插緊串口、網(wǎng)口后,點擊窗口中的確定按鈕開始接著測試,如果串口、網(wǎng)口還不通,就無法進(jìn)行EPU10A板卡的測試,測試流程直接跳轉(zhuǎn)到報告生成模塊,生成報告并完成測試。
4 關(guān)鍵技術(shù)實現(xiàn)
4.1 腳本語言
測試腳本是實現(xiàn)測試自動化的重要部分,腳本的優(yōu)劣直接影響到自動化測試軟件的效率和開銷。測試腳本化可以減少測試人員的工作量,提高軟件測試的可維護(hù)性。同時,腳本語言可移植性好,可提高腳本代碼的可重用性及測試的可重復(fù)性。
運行在PC機(jī)中的測試軟件采用vc++語言進(jìn)行編寫,VC++是微軟公司開發(fā)的一個IDE(集成開發(fā)環(huán)境),是c___的一個開發(fā)平臺,VC++的優(yōu)點是界面簡潔,占用資源少,操作方便。
運行在被測EPU10A板卡的測試鏡像是VxWorks嵌入式操作系統(tǒng)。VxWorks是一種功能強(qiáng)大的實時操作系統(tǒng),其實時性強(qiáng),支持多任務(wù)、系統(tǒng)可配置、組件可剪裁、占用空間小、支持任務(wù)間通信等特點,被成功應(yīng)用于火星探測船、愛國者導(dǎo)彈等高科技產(chǎn)品。
4.2 模塊實現(xiàn)
在自動化檢測EPU10A板卡系統(tǒng)中,保存原有配置模塊、刷新缺省配置模塊、還原原有配置模塊是通過串口來保存、刷新、還原EPU10A板卡的IP地址、啟動方式等配置信息。在完成這些信息的同時,也測試了EPU10A板卡的串口通訊功能。下裝測試程序模塊是通過網(wǎng)口往被測EPU10A板卡放置測試程序,下裝時也測試了EPU10A板卡的網(wǎng)口通訊功能。重啟EPU10A板卡模塊原理是自動的打開串口,往串口里發(fā)送重啟命令,然后EPU10A板卡重新啟動,并引導(dǎo)測試程序正常啟動運行。收發(fā)報文模塊是接收來自EPU10A板卡發(fā)來的報文,報文里有檢測EPU10A板卡的結(jié)果數(shù)據(jù),解析報文得到EPU10A板卡的PCI、VME等情況。生成報告模塊把檢測EPU10A板卡的結(jié)果數(shù)據(jù)插入到一個新建的WORD文檔的表格里,測試人員可以很方便的查看檢測結(jié)果,并且可以打印檢測結(jié)果。操作說明模塊的功能是指導(dǎo)測試人員使用自動化檢測EPU10A板卡系統(tǒng)。
5 結(jié)論
準(zhǔn)備好被檢測的EPU10A板卡和配合檢測所需的設(shè)備,將所有設(shè)備按檢測要求連接,自動化檢測EPU10A板卡系統(tǒng)能一鍵實現(xiàn)整個EPU10A板卡的檢測過程并自動的產(chǎn)生檢測報告,自動化檢測的方法與原有的檢測方法相比,整個檢測過程無需人為操作,檢測過程簡潔,整個檢測過程只需10分鐘,遠(yuǎn)遠(yuǎn)優(yōu)于以往20分鐘以上的檢測過程,極大的提高了檢測效率,簡化檢測流程,提高了工作效率。
參考文獻(xiàn)
[1]黃建軍,楊江平,彭飛,通用自動測試系統(tǒng)(ATS)體系結(jié)構(gòu)及關(guān)鍵技術(shù)[J].火力與指揮控制,2009,34 (03):71-73.
[2]吳翔,王思華,基于DSP的小型直流風(fēng)扇自動化測試系統(tǒng)[J],電力技術(shù)應(yīng)用,2005 (07):24-26.
[3]李忠安,沈全榮,王言國,李興建.電力系統(tǒng)智能裝置自動化測試系統(tǒng)的設(shè)計[J],電力系統(tǒng)自動化,2009 33(08):77-79.
[4]殷永峰,王軼辰,劉斌等.實時嵌入式軟件測試腳本技術(shù)研究[J].計算機(jī)工程,2003, 29 (01):118-119.
[5]譚灰慶.基于VXWORKS的LXI接口軟件設(shè)計[D].哈爾濱:哈爾濱工業(yè)大學(xué),2011: 3-4.