基于NI TestStand 和LabVIEW 開發(fā)模塊化的軟件架構(gòu)
當今企業(yè)所面臨的挑戰(zhàn)之一是測試成本越來越高。由于設(shè)備的復(fù)雜性不斷增加,所以測試這些設(shè)備的成本也在不斷提高。因為測試對于產(chǎn)品質(zhì)量至關(guān)重要,而更加復(fù)雜的電子設(shè)備需要更新式、更先進的測試儀器,所以產(chǎn)品的測試成本過高,無法與其較低的制造成本保持一致。
當今,測試工程師身處在這樣一個產(chǎn)品開發(fā)環(huán)境之中:
產(chǎn)品設(shè)計比前幾代更加復(fù)雜
為保持競爭力并滿足市場需求,開發(fā)周期不斷縮短
預(yù)算不斷縮減,但產(chǎn)品測試卻越來越昂貴
模塊化測試框架:軟件定義的測試方法
為了滿足縮短開發(fā)周期、實現(xiàn)較大范圍的產(chǎn)品組合、減少預(yù)算以及完成更復(fù)雜產(chǎn)品的挑戰(zhàn),測試工程師們不得不放棄專一的、針對特定應(yīng)用的交鑰匙測試系 統(tǒng)。這些系統(tǒng)缺少靈活性,難以適應(yīng)和添加新功能來更新測試更新、更復(fù)雜的產(chǎn)品,因此,傳統(tǒng)解決方案,例如靜態(tài)機架式儀器或?qū)S玫摹癰ig iron”ATE系統(tǒng)都無法有效地滿足當今的市場需求。
為滿足這些需求,測試經(jīng)理和工程師們轉(zhuǎn)向了基于行業(yè)標準的模塊化、軟件定義的測試架構(gòu),它可以提供:
增加測試系統(tǒng)的靈活性,能夠添加新的功能并適應(yīng)它們所需要的新技術(shù)
可擴展性,根據(jù)需要增加新的功能(和儀器)
通過減少前期投資成本及維護成本來降低測試系統(tǒng)成本,同時增加設(shè)備和代碼的重用率
通過硬件抽象層降低硬件折舊的風險
設(shè)計高效的模塊化測試系統(tǒng)需要的架構(gòu)是能夠分離出測試系統(tǒng)(圖1)的不同組成部分--主要是將測試代碼和儀器之間以及測試代碼和總體測試管理架構(gòu)之 間解耦。這種將測試系統(tǒng)模塊化地解耦為不同的組成部分,以及通過軟件定義儀器功能的能力是更快更經(jīng)濟地開發(fā)靈活測試系統(tǒng)的關(guān)鍵因素。
圖1. 測試系統(tǒng)架構(gòu)
一個自動化測試系統(tǒng)需要執(zhí)行諸多任務(wù)和測量操作步驟,其中有些操作是針對特定的被測設(shè)備(Device under test, DUT),而其它的則是適用于各種被測設(shè)備。傳統(tǒng)的測試系統(tǒng)通常將兩種操作類型整合到同一個單一的軟件層。在這種范式下,當項目的要求發(fā)生變化時,測試系 統(tǒng)的每個部分都需要更改,并且代碼的重用變得非常繁瑣。
一個模塊化的測試系統(tǒng)架構(gòu)需要明確劃分系統(tǒng)級任務(wù)與DUT級任務(wù)。系統(tǒng)級任務(wù)對于每一個設(shè)備(測試管理軟件)通常是相同的,而DUT級任務(wù)對于每個 測試設(shè)備(測試代碼)是不同的。如圖表1所示即為DUT級和系統(tǒng)級任務(wù)間的區(qū)別。這種劃分使得測試工程師們能夠快速地重用、維護和修改測試管理軟件的組 件,而不會影響實際的測試代碼,反之亦然。
表1. 測試管理軟件任務(wù)與測試開發(fā)軟件任務(wù)
NI TestStand是 NI推出的一款功能強大、可立即執(zhí)行的測試管理軟件,用于開發(fā)、部署及執(zhí)行測試系統(tǒng)軟件(如圖2所示)。其核心在于NI TestStand是一個測試執(zhí)行程序,允許測試人員按照序列調(diào)用測試代碼,而且該代碼可以由任何編程語言編寫。此外,NI TestStand 還提供了現(xiàn)成可用的常見測試管理軟件功能,如下所列:
將結(jié)果記錄到任何OLEDB或ODBC數(shù)據(jù)庫
報告可以生成多種格式,包括HTML、文本、XML和ATML
管理不同訪問級別的用戶
測試限制管理
簡單和高級的操作界面
并行測試功能,允許在一個單一的DUT上同時測試多種產(chǎn)品或運行多個測試
評論