建立電源系統測試自動化平臺
1 引言
1.1 現狀分析
隨著通信電源維護的集中程度將進一步增強,全網資源的集中管理已是大勢所趨,相應的集中監控和集中維護的要求也將進一步提高,這就對電源系統的智能化和自治能力提出了更高的要求,電源系統可以在更為復雜的環境條件下處理各種異常情況,并向監控中心反映電源系統的運行狀況。因此在電源系統的測試過程中基本的功能測試是不充分的,各種異常情況的模擬測試必須充分進行。
隨著通信電源設備自動化和智能化程度的提高,通信網規模的擴大,集中供電向分散供電轉變,維護人員將被精簡,電源維護將更多的轉向集中監控、系統優化方面。設備日常維護、檢測和搶修方面,將更多的依賴于專業廠家。運營商和設備供應商的關系將超越簡單的供求和買賣關系,在服務領域將會有越來越多的合作。這就要求電源廠家提供電源系統方便快捷的檢測維修平臺,提高電源系統的長期可靠性、電網適應性、操作和維護的方便性,減少維護費用。
同時用戶對電源的技術性能也已非常重視,新的功能需求不斷提出,電源廠家也大力投入新產品的開發。首先應不斷推出性能價格比更優的新產品。其次通過改進性能、增加新功能、改變結構外觀等不斷推出新品種、新系列,全方位滿足用戶的不斷增長的需求。隨著版本的不斷推出,測試的工作量變得巨大,需要提高測試效率來保證產品的穩定性和可靠性。
從產品和技術的現狀和發展可以看出,現有的手工作坊式的測試方法,不僅使測試人員陷入基本功能測試的重復勞動,而且不能保證測試的全面,不能保證產品的穩定性和可靠性。從國內外技術發展和經驗可以看出,建立有效的自動化測試平臺可以幫助我們解決這些問題。
1.2 自動化測試的難度
測試自動化包括測試和自動化兩個不同的學科,首先需要精心設計完善的測試過程,有資深的測試專家定義完整的測試內容和過程;然后將這個過程自動化,這也是比較困難的。要將復雜的測試過程自動化需要完成很多艱巨的工作,包括:
■定義測試過程中實現自動化的范圍
■建立自動化測試的初試條件
■設計自動測試用例的方法
■自動測試用例的表示方法與腳本技術的應用
■自動測試用例腳本的管理與重用
■自動測試過程的跟蹤、記錄和處理
■測試結果數據的收集與比較技術
■自動化測試過程的維護與度量
1.3 中興在測試自動化方面的研究
深圳市中興通訊股份有限公司很早就開始了通信電源測試自動化方面的研究和投入,很多通信電源自動化測試方面的研究成果已經應用到產品開發過程中,使公司的電源產品的質量水平得到了很大的提高,電源產品的穩定性和可靠性得到了用戶的肯定。
下面就中興公司通信電源產品自動化測試平臺的原理作一個介紹。
2 系統組成和原理
2.1 系統組成
在電源系統自動測試平臺的設計開發過程中,除了考慮系統的功能和性能外,還重點對系統的適應性、靈活性和便攜性提出明確的要求,原理框圖如圖1所示。

系統自動測試平臺原理框圖
2.2 系統原理及實現
對于電源監控單元,一般來說主要的接口有通訊接口、模擬量檢測接口、數字量檢測接口和控制接口,通過這些接口實現對電源系統的三遙功能,因此在測試系統中必須完整的實現對這些接口的測試;
電源轉接板主要是為了適應不同類型的電源系統的接口信號要求而設計,通過轉接板實現測試系統下發的控制信號按照要求匹配到監控單元的接口信號上去;從而實現自動測試系統接口的通用性;
自動測試系統通過串口通訊從后臺軟件接收測試用例數據,按照命令和數據的要求輸出接口數據,通過轉接板下發給待測電源監控單元,并檢測待測系統的輸出信號的變化反饋回后臺軟件以便進行比較和驗證處理;同時也可以按照命令和數據的要求保存接口數據,以便測試系統可以脫離后臺軟件單獨運行測試過程,提高了測試系統的便攜性;
為了提高測試平臺的適應能力和靈活性,測試平臺的功能主要集中在后臺軟件,包括測試用例腳本的編寫和編譯、測試用例數據的下發,測試過程的管理,測試結果的比較等,同時后臺軟件對測試系統的配置可以實現對不同電源的測試。
3 測試過程
實現電源產品所有軟件的自動化測試,自動化的含義包括,測試用例自動生成、測試過程的自動實現、測試結果的自動輸出,測試評價和評價依據的自動對應。最終形成一個涵蓋全面的監控軟件自動化測試系統,達到保障測試工作的高效完成,測試依據準確、測試結果客觀,杜絕人為因素影響的目的,以將測試人員從繁重的測試工作中解放出來,將精力投入到與開發部的平行工作的道路上去,即實現開發和測試的同步進行,實現開發設計文檔的同步檢查,測試文檔、測試報表的及時高效率輸出。測試流程如圖2所示

圖2 測試過程流程圖
3.1 編寫測試用例腳本
測試腳本作為自動測試的一個重要構件,在設計時必須根據測試對象和過程的要求進行定義,可以借用標準的腳本語言或者其子集,例如TCL等腳本語言使用普遍,其編譯器源代碼開放為使用帶來了很多方便;同時也可以根據自己的需要自定義腳本語言,在我們的系統中就采用自定義的腳本格式,它的好處就是靈活,簡單,但是要自己編寫編譯處理程序。例如:
acv stepto 220 ,30
該腳本語句表示交流電壓變為220V并保持30秒鐘,在腳本語法的設計中要求獨立于平臺和環境,以便實現腳本的重用;上面舉例的腳本就可以適用于所有通信一次電源的測試,這就可以大大提高測試腳本的開發效率。
3.2 編譯測試用例腳本
如果測試用例腳本采用標準的語言編寫,例如TCL有現成的編譯器可用,這部分的工作相對簡單。在我們的測試系統中采用了自定義的腳本格式,編譯器需要自主開發。
編譯器通過讀取測試系統配置文件把腳本文件轉換為測試系統可以識別的數據,這就保證了測試系統的硬件無關性。
3.3 測試執行與反饋結果
通過編譯生產的數據文件是針對待測電源監控系統的,測試系統執行數據輸出信號作為測試輸入,測試系統按照指令要求收集數據并反饋后臺軟件,在測試腳本中通過指定測試驗證點來控制測試結果的反饋。例如自定義的語法關鍵字testout。
3.4 測試結果比較和評價
對于自動測試系統,其效率的體現主要在于自動比較功能的好壞,簡單的說,就是比較測試輸出結果與預期的輸出結果數據的一致性,并得出差異報告。
對于測試結果的比較,方法有很多:測試過程中的動態比較、測試執行完成后的比較、簡單的完全比較、復雜的規則比較等;在我們的測試平臺中采用了測試過程中的動態比較,通過測試腳本中的控制關鍵字testout來控制測試結果的輸出和比較。
對于預期的測試結果的產生,可以通過手工設定的方式來實現,也可以把一次成功的自動測試的結果輸出數據直接作為比較的標準。
4 總結
通過通信電源系統測試自動化平臺的開發研制和全面推廣使用,使系統測試更加全面和深入,硬件功能模塊的測試覆蓋率從以前的80%左右達到現在的100%,軟件代碼的測試覆蓋率也有很大的提高,對于基于黒盒的功能測試,軟件的代碼覆蓋率一般只能達到50%-60%,經過測試平臺的使用后,代碼覆蓋率的度量數據達到96%,軟硬件的可靠性得到了很大的提高。產品運行穩定、用戶滿意度提高和品牌形象提升都很好地驗證了產品質量的提高。
參考文獻
[1] 劉希禹 通信電源與空調及環境集中監控系統 人民郵電出版社
[2] 張廷鵬 通信用高頻開關電源 人民郵電出版社
[3] 王家慶 智能型高頻開關電源系統的原理使用與維護 人民郵電出版社
[4] Mark Fewster 軟件測試自動化技術與實例詳解 電子工業出版社
[5] Roger S. Pressman 軟件工程-實踐者的研究方法 機械工業出版社
[6] Rex Black 測試流程管理 北京大學出版社
1.1 現狀分析
隨著通信電源維護的集中程度將進一步增強,全網資源的集中管理已是大勢所趨,相應的集中監控和集中維護的要求也將進一步提高,這就對電源系統的智能化和自治能力提出了更高的要求,電源系統可以在更為復雜的環境條件下處理各種異常情況,并向監控中心反映電源系統的運行狀況。因此在電源系統的測試過程中基本的功能測試是不充分的,各種異常情況的模擬測試必須充分進行。
隨著通信電源設備自動化和智能化程度的提高,通信網規模的擴大,集中供電向分散供電轉變,維護人員將被精簡,電源維護將更多的轉向集中監控、系統優化方面。設備日常維護、檢測和搶修方面,將更多的依賴于專業廠家。運營商和設備供應商的關系將超越簡單的供求和買賣關系,在服務領域將會有越來越多的合作。這就要求電源廠家提供電源系統方便快捷的檢測維修平臺,提高電源系統的長期可靠性、電網適應性、操作和維護的方便性,減少維護費用。
同時用戶對電源的技術性能也已非常重視,新的功能需求不斷提出,電源廠家也大力投入新產品的開發。首先應不斷推出性能價格比更優的新產品。其次通過改進性能、增加新功能、改變結構外觀等不斷推出新品種、新系列,全方位滿足用戶的不斷增長的需求。隨著版本的不斷推出,測試的工作量變得巨大,需要提高測試效率來保證產品的穩定性和可靠性。
從產品和技術的現狀和發展可以看出,現有的手工作坊式的測試方法,不僅使測試人員陷入基本功能測試的重復勞動,而且不能保證測試的全面,不能保證產品的穩定性和可靠性。從國內外技術發展和經驗可以看出,建立有效的自動化測試平臺可以幫助我們解決這些問題。
1.2 自動化測試的難度
測試自動化包括測試和自動化兩個不同的學科,首先需要精心設計完善的測試過程,有資深的測試專家定義完整的測試內容和過程;然后將這個過程自動化,這也是比較困難的。要將復雜的測試過程自動化需要完成很多艱巨的工作,包括:
■定義測試過程中實現自動化的范圍
■建立自動化測試的初試條件
■設計自動測試用例的方法
■自動測試用例的表示方法與腳本技術的應用
■自動測試用例腳本的管理與重用
■自動測試過程的跟蹤、記錄和處理
■測試結果數據的收集與比較技術
■自動化測試過程的維護與度量
1.3 中興在測試自動化方面的研究
深圳市中興通訊股份有限公司很早就開始了通信電源測試自動化方面的研究和投入,很多通信電源自動化測試方面的研究成果已經應用到產品開發過程中,使公司的電源產品的質量水平得到了很大的提高,電源產品的穩定性和可靠性得到了用戶的肯定。
下面就中興公司通信電源產品自動化測試平臺的原理作一個介紹。
2 系統組成和原理
2.1 系統組成
在電源系統自動測試平臺的設計開發過程中,除了考慮系統的功能和性能外,還重點對系統的適應性、靈活性和便攜性提出明確的要求,原理框圖如圖1所示。

系統自動測試平臺原理框圖
2.2 系統原理及實現
對于電源監控單元,一般來說主要的接口有通訊接口、模擬量檢測接口、數字量檢測接口和控制接口,通過這些接口實現對電源系統的三遙功能,因此在測試系統中必須完整的實現對這些接口的測試;
電源轉接板主要是為了適應不同類型的電源系統的接口信號要求而設計,通過轉接板實現測試系統下發的控制信號按照要求匹配到監控單元的接口信號上去;從而實現自動測試系統接口的通用性;
自動測試系統通過串口通訊從后臺軟件接收測試用例數據,按照命令和數據的要求輸出接口數據,通過轉接板下發給待測電源監控單元,并檢測待測系統的輸出信號的變化反饋回后臺軟件以便進行比較和驗證處理;同時也可以按照命令和數據的要求保存接口數據,以便測試系統可以脫離后臺軟件單獨運行測試過程,提高了測試系統的便攜性;
為了提高測試平臺的適應能力和靈活性,測試平臺的功能主要集中在后臺軟件,包括測試用例腳本的編寫和編譯、測試用例數據的下發,測試過程的管理,測試結果的比較等,同時后臺軟件對測試系統的配置可以實現對不同電源的測試。
3 測試過程
實現電源產品所有軟件的自動化測試,自動化的含義包括,測試用例自動生成、測試過程的自動實現、測試結果的自動輸出,測試評價和評價依據的自動對應。最終形成一個涵蓋全面的監控軟件自動化測試系統,達到保障測試工作的高效完成,測試依據準確、測試結果客觀,杜絕人為因素影響的目的,以將測試人員從繁重的測試工作中解放出來,將精力投入到與開發部的平行工作的道路上去,即實現開發和測試的同步進行,實現開發設計文檔的同步檢查,測試文檔、測試報表的及時高效率輸出。測試流程如圖2所示

3.1 編寫測試用例腳本
測試腳本作為自動測試的一個重要構件,在設計時必須根據測試對象和過程的要求進行定義,可以借用標準的腳本語言或者其子集,例如TCL等腳本語言使用普遍,其編譯器源代碼開放為使用帶來了很多方便;同時也可以根據自己的需要自定義腳本語言,在我們的系統中就采用自定義的腳本格式,它的好處就是靈活,簡單,但是要自己編寫編譯處理程序。例如:
acv stepto 220 ,30
該腳本語句表示交流電壓變為220V并保持30秒鐘,在腳本語法的設計中要求獨立于平臺和環境,以便實現腳本的重用;上面舉例的腳本就可以適用于所有通信一次電源的測試,這就可以大大提高測試腳本的開發效率。
3.2 編譯測試用例腳本
如果測試用例腳本采用標準的語言編寫,例如TCL有現成的編譯器可用,這部分的工作相對簡單。在我們的測試系統中采用了自定義的腳本格式,編譯器需要自主開發。
編譯器通過讀取測試系統配置文件把腳本文件轉換為測試系統可以識別的數據,這就保證了測試系統的硬件無關性。
3.3 測試執行與反饋結果
通過編譯生產的數據文件是針對待測電源監控系統的,測試系統執行數據輸出信號作為測試輸入,測試系統按照指令要求收集數據并反饋后臺軟件,在測試腳本中通過指定測試驗證點來控制測試結果的反饋。例如自定義的語法關鍵字testout。
3.4 測試結果比較和評價
對于自動測試系統,其效率的體現主要在于自動比較功能的好壞,簡單的說,就是比較測試輸出結果與預期的輸出結果數據的一致性,并得出差異報告。
對于測試結果的比較,方法有很多:測試過程中的動態比較、測試執行完成后的比較、簡單的完全比較、復雜的規則比較等;在我們的測試平臺中采用了測試過程中的動態比較,通過測試腳本中的控制關鍵字testout來控制測試結果的輸出和比較。
對于預期的測試結果的產生,可以通過手工設定的方式來實現,也可以把一次成功的自動測試的結果輸出數據直接作為比較的標準。
4 總結
通過通信電源系統測試自動化平臺的開發研制和全面推廣使用,使系統測試更加全面和深入,硬件功能模塊的測試覆蓋率從以前的80%左右達到現在的100%,軟件代碼的測試覆蓋率也有很大的提高,對于基于黒盒的功能測試,軟件的代碼覆蓋率一般只能達到50%-60%,經過測試平臺的使用后,代碼覆蓋率的度量數據達到96%,軟硬件的可靠性得到了很大的提高。產品運行穩定、用戶滿意度提高和品牌形象提升都很好地驗證了產品質量的提高。
參考文獻
[1] 劉希禹 通信電源與空調及環境集中監控系統 人民郵電出版社
[2] 張廷鵬 通信用高頻開關電源 人民郵電出版社
[3] 王家慶 智能型高頻開關電源系統的原理使用與維護 人民郵電出版社
[4] Mark Fewster 軟件測試自動化技術與實例詳解 電子工業出版社
[5] Roger S. Pressman 軟件工程-實踐者的研究方法 機械工業出版社
[6] Rex Black 測試流程管理 北京大學出版社
評論