結合xml描述進行硬件自動化測試方法
【專利摘要】本發明公開了一種結合XML描述進行硬件自動化測試方法;包括以下步驟:把CPU所有寄存器的信息用可擴展的標記語言XML描述;使用基于用戶數據報協議UDP,使上位機和下位機以相同格式解析數據;將CPU所有寄存器都按功能分組,每組都有不同長度和數目的寄存器,每個寄存器有不同的定義和用途。本發明可以應用于通用的客戶端/服務器系統,用于獲取對方的各種資源和信息等;節約時間成本,避免了重復修改程序,編譯,下載的步驟,大大節約了系統測試的時間和復雜性;通過把列表方式表達的信息轉換為樹形結構表達,可以對數據之間的內在關系建立一目了然的理解。
【專利說明】結合XML描述進行硬件自動化測試方法
【技術領域】
[0001]本發明屬于軟件測試領域,具體是指一種應用于工業控制系統、安全信號系統中對安全CPU的硬件資源信息的獲取,設置以及自動化診斷測試方法。
【背景技術】
[0002]在工業控制系統和安全信號系統(應用于航空電子、鐵路信號、核電等行業)中,實時動態獲取程序的運行信息,是至關重要的,根據獲取的信息可以做到防患于未然。
[0003]基于現有的技術,在VxWorks (Vxfforks操作系統是美國WindRiver公司于1983年設計開發的一種嵌入式實時操作系統(RT0S),是嵌入式開發環境的關鍵組成部分)中動態獲取信息是并不容易的事情,這一般需要重新修改代碼加入調試代碼并打印出需要的信息,這種方法簡單易用,但缺點是要獲取不同的信息時就需要修改代碼,重新編譯,下載。
[0004]另外的方法是使用log信息,把預先選定好的內容(一般是告警,錯誤信息)臨時保存到log文件中,當需要的時候取走log文件,并對log文件分析。這種方法需要事先指定好要log信息,一旦要查看的內容不在選定的范圍內,一般需要重新修改代碼了。
[0005]此外以上2種方法都不具備可讀性,不利于定位信息,一般適合描述線性的數據結構,不方便用來描述復雜的組合數據類型。
【發明內容】
[0006]本發明所要解決的技術問題是提供一種結合XML描述進行硬件自動化測試方法,它可以應用于通用的客戶端/服務器系統,用于獲取對方的各種資源和信息等;節約時間成本,避免了重復修改程序,編譯,下載的步驟,大大節約系統測試的時間和復雜性。
[0007]為了解決以上技術問題,本發明提供了一種結合XML描述進行硬件自動化測試方法;包括以下步驟:把CPU所有寄存器的信息用可擴展的標記語言XML描述;使用基于用戶數據報協議UDP,使上位機和下位機以相同格式解析數據;將CPU所有寄存器都按功能分組,每組都有不同長度和數目的寄存器,每個寄存器有不同的定義和用途。
[0008]本發明的有益效果在于:可以應用于通用的客戶端/服務器系統,用于獲取對方的各種資源和信息等;節約時間成本,避免了重復修改程序,編譯,下載的步驟,大大節約了系統測試的時間和復雜性;通過把列表方式表達的信息轉換為樹形結構表達,可以對數據之間的內在關系建立一目了然的理解。
[0009]上位機和下位機預先定義通信的端口號;一個消息包含一個OLV結構,所謂OLV是偏移,長度和值三個元素的集合,使用offset可以定位寄存器的地址用于下位機尋址,長度指示寄存器長度,有效值是1,2,4個字節;值用來存儲從下位機獲取的寄存器的數據或者是發往下位機的數據,用于設置。
【專利附圖】
【附圖說明】
[0010]下面結合附圖和【具體實施方式】對本發明作進一步詳細說明。[0011]圖1是本發明所述寄存器都按功能分組的示意圖;
[0012]圖2是本發明所述XML使用的協議格式示意圖。
【具體實施方式】
[0013]為了實時動態獲取列車系統的運行信息,在不更新軟件的前提下,全面獲取各種資源信息,程序的運行狀態。UDP協議的全稱是用戶數據報協議,在網絡中它與TCP協議一樣用于處理。UDP數據包,是一種無連接的協議。在OSI模型中,在第四層(傳輸層),處于IP協議的上一層。UDP有不提供數據包分組、組裝和不能對數據包進行排序的缺點,也就是說,當報文發送之后,是無法得知其是否安全完整到達的。UDP用來支持那些需要在計算機之間傳輸數據的網絡應用。
[0014]XML語言(Extensible Markup Language,可擴展的標記語言)是一套定義語義標記的規則,這些標記將文檔分成許多部件并對這些部件加以標識。它也是元標記語言,即定義了用于定義其他與特定領域有關的、語義的、結構化的標記語言的句法語言。
[0015]本發明提供一種用XML語言描述的樹形數據結構,這種結構可以用于描述系統的硬件資源,比如寄存器的偏移,長度和值等信息,也可以用于描述軟件中的全局變量等的信肩、O
[0016]本發明的技術方案是,首先把寄存器的信息用XML語言描述出來,然后設計一種基于UDP的協議,使上位機和下位機都可以相同格式解析數據。如圖1所示MPC8360內部有很多內存映射的寄存器,所有寄存器都是按功能組織的,每組都有不同長度和數目的寄存器,每個寄存器又有不同的定義和用途,用一種合理的數據結構來描述這種層次結構是非常,XML正好適合描述這種結構。圖2的XML語言描述了圖1的結構。
[0017]為了和下位機通信,交換信息還需要定義一種協議,使得雙方可以識別不同的請求,以及從返回消息里提取有用的數據。雙方需要事先定義好通信的端口號。具體協議格式參考圖2所示,一個消息包含一個OLV (offset length value)結構。所謂OLV是偏移,長度和值三個元素的集合,使用offset可以定位寄存器的地址用于下位機尋址,長度指示寄存器長度,有效值是1,2,4個字節。值用來存儲從下位機獲取的寄存器的數據(讀)或者是發往下位機的數據,用于設置(寫)。OLV是UDP的凈載部分,當然以后可以增加新的內容。
[0018]為了使數據顯示具有直觀性,上位機需要使用樹形控件把數據顯示出來。
[0019]本設計的技術效果在于:
[0020]1.通用性,本設計方法可以應用于通用的客戶端/服務器系統,用于獲取對方的各種資源和信息等。
[0021]2.節約時間成本,避免了重復修改程序,編譯,下載的步驟,大大節約了系統測試的時間和復雜性。
[0022]3.可視化及易讀性,通過把列表方式表達的信息轉換為樹形結構表達,可以對數據之間的內在關系建立一目了然的理解。
[0023]I)構造和生成基于PPC板的寄存器(或者全局變量)的信息樹并輸出到XML文件中
[0024]2)編寫上位機程序,解析XML語言,把解析出來的數據按照預先設計好的通信協議組成UDP報文,并發送到下位機里。[0025]3)編寫下位機程序,按照協議解析UDP報文,根據請求的內容獲取寄存器或者數據結構的值,并回送給上位機。
[0026]4)上位機收取信息,并把整個寄存器樹的信息用樹形結構將其顯示出來,具有很強的可讀性。
[0027]本發明并不限于上文討論的實施方式。以上對【具體實施方式】的描述旨在于為了描述和說明本發明涉及的技術方案。基于本發明啟示的顯而易見的變換或替代也應當被認為落入本發明的保護范圍。以上的【具體實施方式】用來揭示本發明的最佳實施方法,以使得本領域的普通技術人員能夠應用本發明的多種實施方式以及多種替代方式來達到本發明的目的。
【權利要求】
1.一種結合XML描述進行硬件自動化測試方法;其特征在于,包括以下步驟: 把CPU所有寄存器的信息用可擴展的標記語言XML描述; 使用基于用戶數據報協議UDP,使上位機和下位機以相同格式解析數據; 將CPU所有寄存器都按功能分組,每組都有不同長度和數目的寄存器,每個寄存器有不同的定義和用途。
2.如權利要求1所述的結合XML描述進行硬件自動化測試方法,其特征在于,上位機和下位機預先定義通信的端口號; 一個消息包含一個OLV結構,所謂OLV是偏移,長度和值三個兀素的集合,定位寄存器的地址用于下位機尋址,長度指示寄存器長度,有效值是1,2,4個字節; 值用來存儲從下位機獲取的寄存器的數據或者是發往下位機的數據,用于設置。
【文檔編號】G06F11/22GK103514070SQ201310473196
【公開日】2014年1月15日 申請日期:2013年10月11日 優先權日:2013年10月11日
【發明者】蔡春田, 俞泓, 林先賢, 雷文博 申請人:上海富欣智能交通控制有限公司