專利名稱:一種基于Java平臺的航天器測試軟件構架及其測試方法
技術領域:
本發明涉及一種基于Java平臺的航天器測試軟件構架及其測試方法。
背景技術:
航天器上設備眾多,涉及到的配套單位眾多,各單位根據航天器上設備具體情況實現了不同架構的單元測試設備。這些單元測試設備有些是由普通工控機實現的,有些是 由DSP、FPGA實現的,有些是基于Windows操作系統的,有些是基于Linux操作系統的,還有些是基于其它嵌入式操作系統的。設備間通信也會采用RS422、1553B、LXI、VXI等各種不同的總線。一般情況下,測試軟件為了平衡硬件操作、運行速度、開發復雜度等幾個方面,都采用C/C++作為開發工具,開發出的測試軟件在運行平臺、硬件接口方面存在很大差異。航天器在總裝單位進行綜合測試時,總裝單位要根據各配套廠家的單元測試設備搭建航天器測試系統,這就造成了綜合測試軟件結構復雜,通用性不強,配套廠家實現的中間件不能得以有效利用的問題。現階段,航天器性能已到達或接近國際先進水平,外貿出口也日趨頻繁。外貿過程中,需提交符合采購方語言、操作習慣的測試軟件。整套測試軟件從操作系統、硬件驅動等底層支撐開始都應是基于采購方官方語言的。測試軟件的研制完成到外貿出口之間往往相隔時間較長,有的接近10年。這期間存在基于采購方官方語言的操作系統、硬件驅動、數據庫、支撐開發環境的情況。因此,航天器測試軟件的外貿出口不僅僅是翻譯軟件界面,而可能從操作系統開始重新架構。重新開發測試軟件存在周期長、維護復雜的問題,且沒有經過批產考核的測試軟件存在大量質量隱患。
發明內容
本發明的目的在于克服現有技術的缺點,提供一種基于Java平臺的航天器測試軟件架構及其測試方法,以解決航天器測試軟件面臨硬件、操作系統、總線通信、支撐環境類型多而造成的架構復雜,通用性不強等問題。本發明的目的是通過以下技術方案來實現的一種基于Java平臺的航天器測試軟件構架,它包含航天器摘要信息單元,用于提供與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來;適配單元,用于接收與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的信息,由硬件管理器、語言版本適配器、操作系統適配器和Java支持環境組成;應用單元,與適配單元相互聯系,用于負責軟件的業務邏輯;Java虛擬機,用于將航天器摘要信息單元獨立出來的基礎信息封裝到適配單元中相對應的部分。所述的操作系統為嵌入式操作系統,包含Windows操作系統、Linux操作系統。所述的應用單元與適配單元通過XML格式配置文件相互聯系。
一種基于Java平臺的航天器測試軟件測試方法,它包含以下步驟(I)將與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來;(2)通過Java虛擬機,將航天器的基礎信息封裝到適配單元中相對應的部分,其中,硬件管理器中建立建立基于CBaseDriver的硬件適配器列表,并定義硬件適配器接口,經過硬件適配器信息讀寫、處理函數和ID唯一性編號;(3)將適配單元中的信息通過接口傳遞給應用單元;(4)應用單元業務邏輯計算,所述的應用單元業務邏輯計算包括以下的內容a、硬件的操作,通過Java本地接口(JNI)技術,硬件適配器定義一套調用本地動態鏈接庫文件的接口,硬件管理器根據統一分配的硬件ID號查找相應硬件適配器,并通過接口調用動態鏈接庫,從而對具體硬件進行操作; b、語言版本的設置;C、操作系統的調用。本發明的有益效果是統一采用Java平臺架構,該架構中實現了硬件管理器、語言版本適配器、操作系統適配器,將硬件操作、語言習慣及操作系統相關的特性從測試軟件中隔離出來,從而實現了針對不同硬件、語言習慣、操作系統的平臺無關的通用測試軟件,通用性強。
圖I是本發明的架構示意圖。
具體實施例方式下面結合附圖進一步描述本發明的技術方案,但要求保護的范圍并不局限于所述。如圖I, 一種基于Java平臺的航天器測試軟件構架,它包含航天器摘要信息單元,用于提供與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來,包括硬件驅動、數據庫、操作系統相關的軟件以及操作系統相關的支撐環境;適配單元,用于接收與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的信息,由硬件管理器、語言版本適配器、操作系統適配器和Java支持環境組成;應用單元,與適配單元相互聯系,用于負責軟件的業務邏輯;Java虛擬機,用于將航天器摘要信息單元獨立出來的基礎信息封裝到適配單元中相對應的部分。所述的操作系統為嵌入式操作系統,包含Windows操作系統、Linux操作系統。所述的應用單元與適配單元通過XML格式配置文件相互聯系,減小了代碼的耦
八
口 ο為方便開發,航天器測試軟件在Windows下完成中文版本開發,同時在Windows、Linux系統下分別封裝了硬件操作函數的動態鏈接庫,各平臺下的動態鏈接庫調用名稱保持一致。開發完成的測試軟件通過修改spring_config. xml文件即可移植到Linux運行平臺。soft_config. xml文件的修改如下所不,將filename修改為english. xml, class修改為Linux平臺的適配類名即可。
<language>
<fileaname>chinese.xml</filename>
〈/language >
<beans>
<bean name="/system Adaptar" class="testsoft.WindowsSystemAdaptar"/>
</beans>一種基于Java平臺的航天器測試軟件測試方法,它包含以下步驟(I)將與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來;(2)通過Java虛擬機,將航天器的基礎信息封裝到適配單元中相對應的部分,硬件基礎信息封裝到硬件管理器中,操作系統基礎信息封裝到操作系統適配器中,其中,硬件管理器中建立建立基于CBaseDriver的硬件適配器列表,并定義硬件適配器接口,經過硬件適配器信息讀寫、處理函數和ID唯一性編號;(3)將適配單元中的信息通過接口傳遞給應用單元;(4)應用單元業務邏輯計算,所述的應用單元業務邏輯計算包括以下的內容a、硬件的操作,通過Java本地接口(JNI)技術,硬件適配器定義一套調用本地動態鏈接庫文件的接口,調用方法為System. IoadLibrary ( “動態鏈接庫調用名稱”)。在不同操作系統平臺上實現硬件操作的動態鏈接庫,不同操作系統平臺下的動態鏈接庫調用名稱保持一致,因此平臺相關性限制在動態鏈接庫里。硬件管理器根據統一分配的硬件ID號查找相應硬件適配器,并通過接口調用動態鏈接庫,從而對具體硬件進行操作;b、語言版本的設置,以中英文為例,將軟件中的字符串常量定義在Chinese, xml和english. xml文件中。Chinese, xml文件中的字符串節點定義如下
<StringNode>
<ID>CS_SOFT_VERSION</ID>
<Content> 軟件標題 </Content>
</StringNode>english. xml 中將該節點 Content 字段內容定義為〈Content>Sof_tVersion〈/Content〉,語言版本適配類根據ID字段CS_S0FT_VERSI0N返〈Content〉字段內容。因此根據 soft_config. xml 中的〈language〉節點描述決定讀取 Chinese, xml 或 english. xml,從而達到設置不同語言版本的目的;C、操作系統的調用,將操作系統平臺相關的操作封裝成操作系統適配器類。平臺相關的操作主要包括環境變量、路徑分隔符讀取 等。
權利要求
1.一種基于Java平臺的航天器測試軟件構架,其特征在于它包含 航天器摘要信息單元,用于提供與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來; 適配單元,用于接收與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的信息,由硬件管理器、語言版本適配器、操作系統適配器和Java支持環境組成; 應用單元,與適配單元相互聯系,用于負責軟件的業務邏輯; Java虛擬機,用于將航天器摘要信息單元獨立出來的基礎信息封裝到適配單元中相對應的部分。
2.根據權利要求I所述的一種基于Java平臺的航天器測試軟件構架,其特征在于所述的操作系統為嵌入式操作系統,包含Windows操作系統、LinuX操作系統。
3.根據權利要求I所述的一種基于Java平臺的航天器測試軟件構架,其特征在于所述的應用單元與適配單元通過XML格式配置文件相互聯系。
4.一種基于Java平臺的航天器測試軟件測試方法,其特征在于它包含以下步驟 (1)將與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來; (2)通過Java虛擬機,將航天器的基礎信息封裝到適配單元中相對應的部分,其中,硬件管理器中建立建立基于CBaseDriver的硬件適配器列表,并定義硬件適配器接口,經過硬件適配器信息讀寫、處理函數和ID唯一性編號; (3)將適配單元中的信息通過接口傳遞給應用單元; (4)應用單元業務邏輯計算,所述的應用單元業務邏輯計算包括以下的內容 a、硬件的操作,通過Java本地接口(JNI)技術,硬件適配器定義一套調用本地動態鏈接庫文件的接口,硬件管理器根據統一分配的硬件ID號查找相應硬件適配器,并通過接口調用動態鏈接庫,從而對具體硬件進行操作; b、語言版本的設置; C、操作系統的調用。
全文摘要
本發明公開了一種基于Java平臺的航天器測試軟件構架及其測試方法,它包含航天器摘要信息單元、適配單元、應用單元以及Java虛擬機,經過將與航天器的硬件、操作系統、總線通信以及支撐環境相關操作的基礎信息并獨立出來;通過Java虛擬機,將航天器的基礎信息封裝到適配單元中相對應的部分,將適配單元中的信息通過接口傳遞給應用單元,應用單元業務邏輯計算的過程。本發明的有益效果是統一采用Java平臺架構,該架構中實現了硬件管理器、語言版本適配器、操作系統適配器,將硬件操作、語言習慣及操作系統相關的特性從測試軟件中隔離出來,從而實現了針對不同硬件、語言習慣、操作系統的平臺無關的通用測試軟件。
文檔編號G06F11/36GK102662842SQ201210105198
公開日2012年9月12日 申請日期2012年4月11日 優先權日2012年4月11日
發明者王麗霞, 胡業火, 莫應強 申請人:貴州航天風華精密設備有限公司