羅剛,羅小平
(中國電子科技集團公司第二十九研究所,四川成都,610000)
為保證產品質量,提升產品合格率,對其性能、功能進行充分測試是非常有必要的,而測試項目多、雜、繁幾乎是每個產品都具備的特性,測試過程對人員、儀器、環境的需求都比較高。普通的手動測試,由于操作力度過大,不但測量效率低下,且測量結果過分依賴于測試人員的熟練度,在測量前就必須先對設備進行大量的按鍵動作,儀器按鈕經重復多次按壓易造成按鍵不靈敏甚至失靈,人員長時間操作、監測容易產生疲勞,效率低下,累計測試耗時長,人員培訓成本、儀器保養、更換成本比較高,已不能滿足日趨繁重地生產日常需求。
各種自動測試系統應運而生,其中基于CSCI的自動測試系統,具備良好的通用性和擴展性、良好的人機交互用戶界面等優點,大大減少了系統運行復雜度,被廣泛應用到各個領域。
CSCI(Computer Software Configuration Item), 計算機軟件配置項,在設計時可選用多種常規編程語言,如C、C++、C#等均可,自動測試軟件在Windows系統上,應用CSCI設計ini類型文件對各項指標參數分別加載測試模塊,利用儀器驅動實現對各類儀器的程控、參數下發、參數回讀,測試結果實時顯示、分析、判斷、記錄。利用UI界面將測試過程、測試結果呈現給用戶,同時在記錄測試過程中上報原始數據,可實時觀測或導出供用戶分析和查看。
自動測試系統設計應明確的基本要素包含使用范圍、引用文檔信息、CSCI級設計決策、CSCI體系結構設計、CSCI詳細設計說明、需求的可追溯性等。以下描述其開發與設計方法。
系統設計原理是通過靈活配置測試環境參數的CSCI設計,實現對各項指標參數的閾值判別,軟件自動計算,可進行執行消息顯示、測試結果輸出、保存等,實現測試自動化、智能化。輸入/輸出數據流圖如下圖所示。

圖1 輸入/輸出數據流圖
CSCI輸入/輸出設計決策信息表如下:

表1 輸入/輸出設計決策信息表
CSCI的行為決策見下表:

表2 CSCI行為決策表
CSCI數據文件設計決策時間下表:

表3 CSCI數據文件設計決策表
CSCI安全性設計決策見下表:

表4 CSCI安全性設計決策表
CSCI靈活性設計決策見下表:

表5 CSCI靈活性設計決策表
CSCI通用性設計決策見下表:

表6 CSCI通用性設計決策表
當然,還有其他決策,如操作系統是選用win7還是win10,通訊協議是GPIB、USB還是TCP/IP、開發工具是C還是C#等。
基本的系統至少包含端口接口、儀器接口、功能函數以及指標測試模塊,各單元組成示例如圖2所示。

圖2 CSCI 單元組成示例
各單元說明見表7:

表7 CSCI 單元說明
示例中的系統執行方案為:測試軟件打開后,對串口參數進行設置并打開串口,等待檢測產品數據上報,同時對測試參數進行設置,用戶可選擇待測的指標項目,選擇后根據配置表自動設置指標測試參數,設置完成后即可開始指標測試。測試過程中測試結果將實時顯示,測試完成將結果保存。系統執行流程如圖3所示。

圖3 執行流程圖
系統運行后進入主界面,面板上有功能按鈕欄,實時數據文本顯示區,參數設置區、測試指標選擇區、指標測試區等部分,設計時需按照軟件功能將各功能詳細設計說明。下面舉例說明。
1.3.1 系統接口關系
CSCI接口關系如圖4所示。

圖4 CSCI 接口關系
測試系統接口為人機交互接口,包含用戶在測試軟件中配置測試環境參數以及控制自動測試模塊的各人機交互窗體。接口標識和接口表如表8。

表8 人機交互接口表
1.3.2 靈敏度測試
靈敏度測試流程如圖5所示 。

圖5 靈敏度測試流程
根據靈敏度測試的原理和計算公式(本文不再累述),測試完所有通道的靈敏度,顯示測試結果并保存在文件中。
1.3.3 異常處理
系統中可以增加用戶友好界面設計,在各個環節若出錯或有重要提示,將彈出提示窗口,基本流程如下。
1.3.4 系統界面
根據各個功能模塊的流程,對自動測試系統進行軟件界面設計,基本元素應包含菜單功能區、信息欄、指標欄、顯示欄等,根據項目特點進行優化設計。下圖為基于C#的應用示例。

圖6 異常處理流程

圖7 自動測試系統軟件界面示例

圖8 CAN自檢功能模塊示例
軟件界面應包含各個功能區,各功能模板合理布局,步進式操作最符合人的操作習慣,比如先選擇端口,再選擇儀器,填寫必要信息,開始測量等。系統運行也可設置成一鍵啟動,根據設定規則,按照流程后臺自動運行,實時顯示過程數據,根據需要對數據進行實時分析、處理、存儲等操作,大量減少人工手動操作,解放人力,使測試過程標準化。
本文研究了基于CSCI的自動測試系統開發與設計過程,描述了重要要素的基本設計方法。這種方式設計出的自動測試系統有以下幾個優點:兼容性強,適用各種編程環境;靈活利用合適的驅動便于實現各類硬件接口的調整,可用于不同種類儀器;具有數據快速處理的優勢,及時滿足設計者、使用者使用和分析數據的需求;自動化特性能最大化釋放人力資源;簡潔清晰的可視化界面給使用者不一樣的體驗。