一種實現高效測試的虛擬測試儀表及測試方法
【專利摘要】本發明公開了一種實現高效測試的虛擬測試儀表及測試方法,涉及包處理芯片的測試技術領域。該虛擬測試儀表包括順次相連的配置模塊、發送模塊、接收模塊、檢查模塊、比對模塊和結果輸出模塊;配置模塊用于對測試用例中的數據發送、接收期望進行配置;發送模塊用于將測試用例中數據發送相關配置封裝成發送幀發送至DUT;接收模塊用于對DUT輸出的幀信息進行接收;檢查模塊用于對接收幀進行有效性檢查;比對模塊用于對接收幀與配置的接收期望進行幀內容的比對,以驗證接收幀的正確性;結果輸出模塊用于將測試結果以Log文件的形式輸出。本發明能夠增強測試用例的可重用性,簡化測試過程;還能縮短不同驗證階段的收斂時間,提高測試效率。
【專利說明】
一種實現高效測試的虛擬測試儀表及測試方法
技術領域
[0001] 本發明涉及包處理芯片的測試技術領域,具體來講是一種實現高效測試的虛擬測 試儀表及測試方法。
【背景技術】
[0002] 隨著包處理芯片的需求擴大化及協議復雜化,芯片驗證環節的高效性顯得尤為重 要。實際開發過程中,通常需要在功能模型、寄存器傳輸級(Register Transport Level)、 FPGA(Field Programmable Gate Array,現場可編程門陣列)原型等不同級別上做大量的 測試(驗證)工作。
[0003] 目前,功能模型和寄存器傳輸級的測試以虛擬測試儀表的形式驅動收發,FPGA原 型測試階段則通過實體儀表的形式驅動收發。由于上述3個階段的測試所采用的方法不同, 一般需要為每個階段單獨設計一套硬件或軟件來分別實現,使得不同測試階段的測試用例 可重用性差,整個過程異常復雜;并且,以0AM(0peration Administration and Maintenance,操作、管理、維護)為代表的協議測試在FPGA原型測試之前欠缺完備的測試環 境,整個芯片的測試周期較長、測試效率較低。
【發明內容】
[0004] 針對現有技術中存在的缺陷,本發明的目的在于提供一種實現高效測試的虛擬測 試儀表及測試方法,能夠增強測試用例的可重用性,簡化測試過程;還能縮短不同驗證階段 的收斂時間,提高測試效率。
[0005] 為達到以上目的,本發明采取的技術方案是:提供一種實現高效測試的虛擬測試 儀表,該虛擬測試儀表進行測試時與被測設備DUT連接,包括順次相連的配置模塊、發送模 塊、接收模塊、檢查模塊、比對模塊和結果輸出模塊;所述配置模塊用于:對測試用例中的數 據發送、接收期望進行配置;所述發送模塊用于:將測試用例中數據發送、接收期望的配置 封裝成發送幀發送至DUT;并將封裝的發送幀以Log文件的形式存儲;所述接收模塊用于:對 DUT輸出的幀信息進行接收,將接收到的幀定義為接收幀;所述檢查模塊用于:根據測試用 例中數據發送、接收期望的配置,對接收幀進行有效性檢查;所述比對模塊用于:根據測試 用例中接收期望的配置,對接收幀進行幀內容的比對,以驗證接收幀的正確性;所述結果輸 出模塊用于:將測試結果以Log文件的形式輸出。
[0006] 在上述技術方案的基礎上,所述發送模塊內設置有超時定時器,超時定時器在發 送模塊進行發送時啟動,若在超時定時器設置的超時時間內收到對端DUT的響應,則表示發 送正常,可繼續執行其他操作;若在超時定時器設置的超時時間內未收到對端DUT的響應, 則表示發送不正常,結束此次測試。
[0007] 在上述技術方案的基礎上,該虛擬測試儀表同時支持3種應用場景:系統功能模型 測試、軟硬件協同仿真測試、FPGA原型測試;當應用場景為系統功能模型測試時,被測設備 DUT對應為C模型封裝器;當應用場景為軟硬件協同仿真測試時,被測設備DUT對應為RTL測 試平臺;當應用場景為FPGA原型測試時,被測設備DUT對應為FPGA。
[0008] 在上述技術方案的基礎上,當應用場景為系統功能模型測試或軟硬件協同仿真測 試時,虛擬測試儀表的發送模塊、接收模塊均直接與DUT相連;當應用場景為FPGA原型測試 時,該虛擬測試儀表內部還增設有發送轉換模塊、接收轉換模塊,且虛擬測試儀表與DUT之 間還增設有實體測試儀表,所述發送模塊、接收模塊分別通過發送轉模塊、接收轉換模塊與 實體測試儀表相連。
[0009] 本發明還提供一種基于上述虛擬測試儀表的實現高效測試的測試方法,包括以下 步驟:
[0010] 步驟S1、配置:對測試用例中的數據發送、接收期望進行配置,轉入步驟S2;
[0011] 步驟S2、發送:將測試用例中數據發送、接收期望的配置封裝成發送幀發送至DUT; 并將封裝的發送幀以Log文件的形式存儲,轉入步驟S3;
[0012] 步驟S3、接收:對DUT輸出的幀信息進行接收,將接收到的幀定義為接收幀,轉入步 驟S4;
[0013] 步驟S4、檢查:根據測試用例中數據發送、接收期望的配置,對接收幀進行有效性 檢查,若檢查通過,則轉入步驟S5;若檢查未通過,則給出本測試用例失敗信息及具體原因, 結束;
[0014] 步驟S5、比對:根據測試用例中接收期望的配置,對接收幀進行幀內容的比對,若 比對通過,則判定為正確的接收,轉入步驟S6;若比對未通過,則判定為錯誤的接收,結束;
[0015] 步驟S6、結果輸出:將測試結果以Log文件的形式輸出,結束。
[0016] 在上述技術方案的基礎上,在執行步驟S2的同時,還包括以下步驟:在進行發送幀 的發送時啟動超時定時器,判斷在超時定時器設置的超時時間內是否收到對端DUT的響應, 若是,則表示發送正常,可繼續執行其他操作;否則表示發送不正常,結束此次測試。
[0017] 在上述技術方案的基礎上,該測試方法可適用于3種應用場景:系統功能模型測 試、軟硬件協同仿真測試、FPGA原型測試;步驟S2中,當應用場景為系統功能模型測試或軟 硬件協同仿真測試時,是以消息傳遞的方式將發送幀直接發送至DUT;當應用場景為FPGA原 型測試時,則需對發送幀進行轉換后,通過驅動實體測試儀表執行發送;步驟S3中,當應用 場景為系統功能模型測試或軟硬件協同仿真測試時,是以接收消息的形式獲取DUT輸出的 幀信息;當應用場景為FPGA原型測試時,則需通過實體測試儀表采集DUT輸出的幀信息,然 后再對實體測試儀表采集的幀信息進行轉換后接收。
[0018] 在上述技術方案的基礎上,步驟S1中,對測試用例中的數據發送、接收期望進行配 置時,數據發送的配置內容包括:發送端口號、幀數量、幀長度、幀內容和發送模式;接收期 望的配置內容包括:有效性檢查模式、有效性檢查內容、期望接收的端口號、期望收幀數量、 期望收幀長度和期望幀內容;步驟S2具體包括以下步驟:
[0019] 步驟S201、配置合法性檢驗:判斷測試用例中數據發送、接收期望的配置是否合 法,若是,轉入步驟S202;否則,給出錯誤提示并結束;
[0020] 步驟S202、期望池確定:根據測試用例中有關接收期望的配置,組建出期望池,轉 入步驟S203;
[0021]步驟S203、發送幀內容封裝:根據測試用例中已設的協議域信息以及Payload信 息,完成發送幀內容的封裝,發送幀內容中包含期望池,轉入步驟S204;
[0022] 步驟S204、發送幀描述加載:根據測試用例中數據發送、接收期望的配置得到幀描 述信息,幀描述信息包括:發送端口號、期望接收的端口號、流ID、包ID、丟棄指示、ICRC驗證 值;將幀描述信息加載到發送幀中,轉入步驟S205;
[0023] 步驟S205、發送幀發送:按照測試用例中所配置的發送模式,將加載有幀描述信息 的發送幀發送至DUT;并將該發送幀以Log文件的形式存儲。
[0024]在上述技術方案的基礎上,步驟S4具體包括以下操作:
[0025]步驟S401、幀描述解析:從接收幀中解析出幀描述信息,檢查幀描述信息是否合 法,若是,轉入步驟S402;若否,給出幀描述不合法的錯誤提示,結束;
[0026]步驟S402、接收存儲及統計:將接收幀以Log文件的形式存儲,并對收發包進行統 計,轉入步驟S403;
[0027]步驟S403、超時檢查:判斷接收幀是否是在超時時間內發送的有效幀,若是,轉入 步驟S404;否則,給出超時錯誤提示,結束;
[0028]步驟S404、丟棄性檢查:根據解析出的幀描述信息的丟棄指示,判斷接收幀是否在 發送時標識為期望丟棄的幀,以驗證DUT的丟棄、轉發行為的正確性,若是,給出丟棄包錯誤 提示,結束;否則,轉入步驟S405;
[0029]步驟S405、接收端口檢查:判斷接收幀的接收端口是否正確,以驗證DUT的轉發路 徑的正確性,若是,轉入步驟S406;否則,給出收包端口錯誤的提示,結束;
[0030] 步驟S406、有效性檢查:從IP檢查、FCS檢查、幀長度檢查、ICRC檢查中選擇一種或 多種檢查模式,對接收幀的合法性進行檢查,若檢查通過,則轉入步驟S5;若檢查未通過,則 給出相應錯誤提示后,結束。
[0031 ]在上述技術方案的基礎上,步驟S5具體包括以下操作:
[0032]步驟S501:確定比對模式,若為絕對匹配模式,轉入步驟S502;若為庫匹配模式,轉 入步驟S503;
[0033]步驟S502:選擇期望池中幀描述信息與之匹配的期望幀;將該期望幀與接收幀信 息逐一比對,只有接收幀與期望幀的信息完全匹配才判定為正確的接收;否則,判定為錯誤 的接收,給出具體不匹配的信息提示并保存到Log文件中,結束;
[0034]步驟S503:將接收幀信息與期望池中的期望幀逐一比對,只要存在匹配的期望幀, 則判定為正確的接收;否則,判定為錯誤的接收,給出錯誤信息并保存到Log文件中,結束。 [0035]本發明的有益效果在于:
[0036] 1、本發明的虛擬測試儀表包括配置模塊、發送模塊、接收模塊、檢查模塊、比對模 塊和結果輸出模塊。其中,發送模塊能將測試用例中數據發送、接收期望的配置封裝成發送 幀發送至DUT(Device under test,被測設備);接收模塊能對DUT輸出的幀信息進行接收; 檢查模塊能根據測試用例中數據發送、接收期望的配置(即期望配置),對接收幀進行有效 性檢查;比對模塊能根據測試用例中接收期望的配置(即期望幀內容),對接收幀進行幀內 容的比對,以驗證接收幀的正確性;結果輸出模塊能將測試結果以Log文件的形式輸出,以 便測試人員(或用戶)快速查看、定位測試用例的異常,還便于回歸測試的自動運行。
[0037]與現有技術相比,本發明通過具有上述功能模塊的虛擬測試儀表,能實現高效的 包處理芯片的測試,能對DUT的輸出結果進行自動比對,無需人工參與,將繁瑣的測試任務 自動化,提高測試效率,縮短測試時間,從而提高測試準確性和測試人員的積極性,并且可 以進行大規模的回歸測試,具有可復現性,能徹底將測試技術人員從重復的工作中解脫出 來,使其可以投入更多精力到設計更好的測試用例中。
[0038] 2、本發明適用于包處理芯片的整個測試周期,尤其是前端測試,效果非常顯著,初 期系統模型測試期間能夠將所有測試用例測試完成,后續的軟硬協同仿真測試階段和FPGA 原型測試階段仍然可以沿用之前的測試用例,在不修改原有測試用例的情況下,只需修改 少量全局配置參數置即可完成測試,可實現最大限度地復用前期測試資源,不但增強測試 用例的可重用性,簡化測試過程;還能縮短不同驗證階段的收斂時間,提高測試效率。
[0039] 3、本發明為0ΑΜ協議測試提供了高效的驗證方案,改善了 FPGA互通階段才進行0ΑΜ 協議測試的業內常規做法,實現在FPGA測試初期即可復用在系統模型測試階段的大批量測 試用例,自動完成0ΑΜ基本功能的測試,提高了驗證效率,降低了調試成本。
【附圖說明】
[0040]圖1為本發明實施例中虛擬測試儀表的結構框圖;
[0041 ]圖2為系統功能模型測試的應用場景示意圖;
[0042] 圖3為軟硬件協同仿真測試的應用場景示意圖;
[0043] 圖4為FPGA原型測試的應用場景示意圖;
[0044] 圖5為本發明實施例中實現高效測試的測試方法的流程圖;
[0045]圖6為步驟S2的具體流程圖;
[0046]圖7為步驟S4的具體流程圖。
【具體實施方式】
[0047] 下面結合附圖及具體實施例對本發明作進一步的詳細描述。
[0048] 參見圖1所示,本發明實施例提供一種實現高效測試的虛擬測試儀表,該虛擬測試 儀表進行測試時與被測設備DUT(Device under test)連接。具體來說,該虛擬測試儀表包 括順次相連的配置模塊、發送模塊、接收模塊、檢查模塊、比對模塊和結果輸出模塊。
[0049] 其中,配置模塊用于:對測試用例中的數據發送、接收期望進行配置;具體來說,數 據發送的配置內容包括:發送端口號、幀數量、幀長度、幀內容和發送模式;接收期望的配置 內容包括:有效性檢查模式、有效性檢查內容、期望接收的端口號、期望收幀數量、期望收幀 長度和期望幀內容。
[0050] 發送模塊用于:將測試用例中數據發送、接收期望的配置封裝成發送幀發送至 DUT;并將封裝的發送幀以Log (日志)文件的形式存儲。
[0051] 接收模塊用于:對DUT輸出的幀信息進行接收,并將接收到的幀定義為接收幀。
[0052] 檢查模塊用于:根據測試用例中數據發送、接收期望的配置(即期望配置),對接收 幀進行有效性檢查;有效性檢查內容包括接收端口號是否正確、幀數量是否一致、協議類型 檢查是否通過、幀長度是否匹配、校驗是否正確等。
[0053] 比對模塊用于:根據測試用例中接收期望的配置(即期望幀內容),對接收幀進行 幀內容的比對,以驗證接收幀的正確性。
[0054]結果輸出模塊用于:將測試結果以Log文件的形式輸出。
[0055]參見圖2至圖4所示,本發明的虛擬測試儀表同時支持3種應用場景:系統功能模型 測試(C-model,又稱C模型測試)、軟硬件協同仿真測試(Co-simulation)、FPGA原型測試 (Emulation)。當應用場景為系統功能模型測試時,被測設備DUT對應為C模型封裝器,如圖2 所示;當應用場景為軟硬件協同仿真測試時,被測設備DUT對應為RTL(Register Transport Level,寄存器傳輸級)測試平臺,如圖3所示;當應用場景為FPGA原型測試時,被測設備DUT 對應為FPGA,如圖4所示。
[0056]在此基礎上,參見圖2和圖3所示,當應用場景為系統功能模型測試或軟硬件協同 仿真測試時,虛擬測試儀表的發送模塊、接收模塊均直接與DUT相連;而參見圖4所示,當應 用場景為FPGA原型測試時,該虛擬測試儀表內部還增設有用于實現轉換的發送轉換模塊、 接收轉換模塊,且虛擬測試儀表與DUT之間還增設有實體測試儀表,所述發送模塊、接收模 塊分別通過發送轉模塊、接收轉換模塊與實體測試儀表相連。
[0057]另外,為了保證同步通信的有效性,避免出現因發送幀無法保證正常發送而出現 卡死的現象(任意一端掉線而另外一端不知道的情況),本發明采用在發送模塊內設置超時 定時器的方式來解決上述問題。具體來說,所述發送模塊內設置有超時定時器,超時定時器 在發送模塊進行發送時啟動,若在超時定時器設置的超時時間內收到對端DUT的響應,則表 示發送正常,可繼續執行其他操作;若在超時定時器設置的超時時間內未收到對端DUT的響 應,則表示發送不正常,結束此次測試。可以理解的是,超時定時器的超時時間可在測試用 例中根據測試人員(或用戶)的需要自行設置;若測試人員(或用戶)未設置,則采用超時定 時器的默認時間。具體來說,系統功能模型測試應用場景下的默認時間為5s,軟硬件協同仿 真測試、FPGA原型測試應用場景下的默認時間為180s,即3分鐘。
[0058]參見圖5所示,本發明實施例還提供一種基于上述虛擬測試儀表的實現高效測試 的測試方法,包括以下步驟:
[0059] 步驟S1、配置:對測試用例中的數據發送、接收期望進行配置,轉入步驟S2;具體來 說,數據發送的配置內容包括:發送端口號、幀數量、幀長度、幀內容和發送模式;接收期望 的配置內容包括:有效性檢查模式、有效性檢查內容、期望接收的端口號、期望收幀數量、期 望收幀長度和期望幀內容。
[0060] 步驟S2、發送:將測試用例中數據發送、接收期望的配置封裝成發送幀發送至DUT; 并將封裝的發送幀以Log(日志)文件的形式存儲,轉入步驟S3;
[0061] 可以理解的是,步驟S2中,當應用場景為系統功能模型測試或軟硬件協同仿真測 試時,是以消息傳遞的方式將發送幀直接發送至DUT;當應用場景為FPGA原型測試時,需對 發送幀進行轉換后,通過驅動實體測試儀表執行發送。
[0062]步驟S3、接收:對DUT輸出的幀信息進行接收,并將接收到的幀定義為接收幀,轉入 步驟S4;
[0063] 可以理解的是,步驟S3中,當應用場景為系統功能模型測試或軟硬件協同仿真測 試時,是以接收消息的形式獲取DUT輸出的幀信息(即以接收消息的形式獲取接收幀);當應 用場景為FPGA原型測試時,需通過實體測試儀表采集DUT輸出的幀信息,然后再對實體測試 儀表采集的幀信息進行轉換后接收。
[0064] 步驟S4、檢查:根據測試用例中數據發送、接收期望的配置(即期望配置),對接收 幀進行有效性檢查,有效性檢查內容包括接收端口號是否正確、幀數量是否一致、協議類型 檢查是否通過、幀長度是否匹配、校驗是否正確等;若檢查通過,則轉入步驟S5;若檢查未通 過,則給出本測試用例失敗信息及具體原因,結束。
[0065] 步驟S5、比對:根據測試用例中接收期望的配置(即期望幀內容),對接收幀進行幀 內容的比對,以驗證接收幀的正確性,若比對通過,則判定為正確的接收,轉入步驟S6;若比 對未通過,則判定為錯誤的接收,結束。
[0066] 步驟S6、結果輸出:將測試結果以Log文件的形式輸出,結束。其中,測試結果包括 收發包統計信息、有效性檢查結果、幀內容比對結果以及測試的最終結論。本步驟既方便用 戶查看以快速定位測試用例的異常,又便于回歸測試的自動運行。
[0067] 實際操作時,為了保證同步通信的有效性,避免出現因發送幀無法保證正常發送 而出現卡死的現象(任意一端掉線而另外一端不知道的情況),本發明采用超時判斷的方式 來解決上述問題。也就是說,在步驟S2的同時,還包括以下步驟:在進行發送幀的發送時啟 動超時定時器,判斷在超時定時器設置的超時時間內是否收到對端DUT的響應,若是,則表 示發送正常,可繼續執行其他操作;否則表示發送不正常,結束此次測試。
[0068] 在此基礎上,參見圖6所示,步驟S2具體包括以下步驟:
[0069] 步驟S201、配置合法性檢驗:判斷測試用例中數據發送、接收期望的配置是否合 法,若是,轉入步驟S202;否則,給出錯誤提示并結束;
[0070] 步驟S202、期望池確定:根據測試用例中有關接收期望的配置,組建出由一系列期 望的接收幀組成的期望池,該期望池用以在接收時做對比判斷用,轉入步驟S203;
[0071] 步驟S203、發送幀內容封裝:根據測試用例中已設的協議域信息以及Payload(凈 荷)信息,完成發送幀內容的封裝,發送幀內容中包含期望池,轉入步驟S204;
[0072] 步驟S204、發送幀描述加載:根據測試用例中數據發送、接收期望的配置得到幀描 述信息,幀描述信息包括:發送端口號、期望接收的端口號、流ID、包ID、丟棄指示、ICRC驗證 值;將幀描述信息加載到發送幀中,轉入步驟S205;
[0073] 步驟S205、發送幀發送:按照測試用例中所配置的發送模式,將加載有幀描述信息 的發送幀通過對應端口發送至DUT;并將該發送幀以Log文件的形式存儲。
[0074] 進一步地,參見圖7所示,步驟S4具體包括以下操作:
[0075]步驟S401、幀描述解析:從接收幀中解析出幀描述信息,檢查幀描述信息是否合 法,若是,轉入步驟S402;若否,給出幀描述不合法的錯誤提示,結束;
[0076]步驟S402、接收存儲及統計:將接收幀以Log文件的形式存儲,并對收發包進行統 計,轉入步驟S403;
[0077]步驟S403、超時檢查:判斷接收幀是否是在超時時間內發送的有效幀,若是,轉入 步驟S404;否則,給出超時錯誤提示,結束;
[0078]步驟S404、丟棄性檢查:根據解析出的幀描述信息的丟棄指示,判斷接收幀是否在 發送時標識為期望丟棄的幀,以驗證DUT的丟棄、轉發行為的正確性,若是,給出丟棄包錯誤 提示,結束;否則,轉入步驟S405;
[0079]步驟S405、接收端口檢查:判斷接收幀的接收端口是否正確,以驗證DUT的轉發路 徑的正確性,若是,轉入步驟S406;否則,給出收包端口錯誤的提示,結束;
[0080] 步驟S406、有效性檢查:從IP檢查、FCS(Frame Check Sequence,幀校驗序列)檢 查、幀長度檢查、ICRC(Inner Cyclic Redundancy Check,內部循環冗余校驗)檢查中選擇 一種或多種檢查模式,對接收幀的合法性進行檢查,若檢查通過,則轉入步驟S5;若檢查未 通過,則給出相應錯誤提示后,結束。
[0081 ] 具體來說,IP檢查、FCS檢查、幀長度檢查、ICRC檢查的具體檢查步驟分別為:口
[0082] IP檢查:若接收幀是IP幀,則對接收幀進行IP校驗和的計算及比對,比對成功,表 示IP檢查通過;比對失敗,表示IP檢查未通過,則給出IP檢查錯誤指示;
[0083] FCS檢查:根據接收幀內容做CRC(Cyclic Redundancy Check,循環冗余校驗)計算 并且與接收幀的最后4B做比對,以驗證FCS的正確性,比對成功,表示FCS檢查通過;比對失 敗,表示FCS檢查未通過,則給出FCS檢查錯誤提示;
[0084] 幀長度檢查:判斷接收幀的長度是否在期望收幀長度的范圍內或與期望收幀長度 相匹配,若是,表示幀長度檢查通過;若否,表示幀長度檢查未通過,則給出幀長度檢查錯誤 提示。本實施例提供絕對值檢查、原始幀加減檢查兩種模式,可增強測試的直觀性和可操作 性。
[0085] ICRC檢查:將發送幀、接收幀的部分或全部內容做CRC校驗,以驗證輸入輸出的一 致性,CRC校驗成功,表示ICRC檢查通過;CRC校驗失敗,表示ICRC檢查未通過,則給出ICRC檢 查錯誤提示。
[0086]進一步地,本發明在對接收幀進行幀內容的比對時,提供可選全部或者部分匹配 的模式,在測試用例中僅對關心的部分幀內容做期望。配置時可選三種匹配模式:協議幀的 逐個域信息、BYTE匹配(字節匹配)、BIT匹配(比特匹配)。為適應0ΑΜ協議測試需要,本發明 提供絕對匹配和庫匹配兩種模式。具體來說,步驟S5具體包括以下操作:
[0087]步驟S501:確定比對模式,若為絕對匹配模式,轉入步驟S502;若為庫匹配模式,轉 入步驟S503;
[0088]步驟S502:選擇期望池中幀描述信息與之匹配的期望幀;將該期望幀與接收幀信 息逐一比對,只有接收幀與期望幀的信息完全匹配才判定為正確的接收;否則,判定為錯誤 的接收,給出具體不匹配的信息提示并保存到Log文件中,結束;
[0089]步驟S503:將接收幀信息與期望池中的期望幀逐一比對,只要存在匹配的期望幀, 則判定為正確的接收;否則,判定為錯誤的接收,給出錯誤信息并保存到Log文件中,結束。 [0090]本發明不局限于上述實施方式,對于本技術領域的普通技術人員來說,在不脫離 本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也視為本發明的保護 范圍之內。本說明書中未作詳細描述的內容屬于本領域專業技術人員公知的現有技術。
【主權項】
1. 一種實現高效測試的虛擬測試儀表,該虛擬測試儀表進行測試時與被測設備DUT連 接,其特征在于:該虛擬測試儀表包括順次相連的配置模塊、發送模塊、接收模塊、檢查模 塊、比對模塊和結果輸出模塊; 所述配置模塊用于:對測試用例中的數據發送、接收期望進行配置; 所述發送模塊用于:將測試用例中數據發送、接收期望的配置封裝成發送幀發送至 DUT;并將封裝的發送幀以Log文件的形式存儲; 所述接收模塊用于:對DUT輸出的幀信息進行接收,將接收到的幀定義為接收幀; 所述檢查模塊用于:根據測試用例中數據發送、接收期望的配置,對接收幀進行有效性 檢查; 所述比對模塊用于:根據測試用例中接收期望的配置,對接收幀進行幀內容的比對,以 驗證接收幀的正確性; 所述結果輸出模塊用于:將測試結果以Log文件的形式輸出。2. 如權利要求1所述的實現高效測試的虛擬測試儀表,其特征在于:所述發送模塊內設 置有超時定時器,超時定時器在發送模塊進行發送時啟動,若在超時定時器設置的超時時 間內收到對端DUT的響應,則表示發送正常,可繼續執行其他操作;若在超時定時器設置的 超時時間內未收到對端DUT的響應,則表示發送不正常,結束此次測試。3. 如權利要求1所述的實現高效測試的虛擬測試儀表,其特征在于:該虛擬測試儀表同 時支持3種應用場景:系統功能模型測試、軟硬件協同仿真測試、FPGA原型測試;當應用場景 為系統功能模型測試時,被測設備DUT對應為C模型封裝器;當應用場景為軟硬件協同仿真 測試時,被測設備DUT對應為RTL測試平臺;當應用場景為FPGA原型測試時,被測設備DUT對 應為FPGA。4. 如權利要求3所述的實現高效測試的虛擬測試儀表,其特征在于:當應用場景為系統 功能模型測試或軟硬件協同仿真測試時,虛擬測試儀表的發送模塊、接收模塊均直接與DUT 相連;當應用場景為FPGA原型測試時,該虛擬測試儀表內部還增設有發送轉換模塊、接收轉 換模塊,且虛擬測試儀表與DUT之間還增設有實體測試儀表,所述發送模塊、接收模塊分別 通過發送轉模塊、接收轉換模塊與實體測試儀表相連。5. -種基于權利要求1所述虛擬測試儀表的實現高效測試的測試方法,其特征在于,包 括以下步驟: 步驟S1、配置:對測試用例中的數據發送、接收期望進行配置,轉入步驟S2; 步驟S2、發送:將測試用例中數據發送、接收期望的配置封裝成發送幀發送至DUT;并將 封裝的發送幀以Log文件的形式存儲,轉入步驟S3; 步驟S3、接收:對DUT輸出的幀信息進行接收,將接收到的幀定義為接收幀,轉入步驟 S4; 步驟S4、檢查:根據測試用例中數據發送、接收期望的配置,對接收幀進行有效性檢查, 若檢查通過,則轉入步驟S5;若檢查未通過,則給出本測試用例失敗信息及具體原因,結束; 步驟S5、比對:根據測試用例中接收期望的配置,對接收幀進行幀內容的比對,若比對 通過,則判定為正確的接收,轉入步驟S6;若比對未通過,則判定為錯誤的接收,結束; 步驟S6、結果輸出:將測試結果以Log文件的形式輸出,結束。6. 如權利要求5所述的實現高效測試的測試方法,其特征在于:在執行步驟S2的同時, 還包括以下步驟:在進行發送幀的發送時啟動超時定時器,判斷在超時定時器設置的超時 時間內是否收到對端DUT的響應,若是,則表示發送正常,可繼續執行其他操作;否則表示發 送不正常,結束此次測試。7. 如權利要求5所述的實現高效測試的測試方法,其特征在于:該測試方法可適用于3 種應用場景:系統功能模型測試、軟硬件協同仿真測試、FPGA原型測試; 步驟S2中,當應用場景為系統功能模型測試或軟硬件協同仿真測試時,是以消息傳遞 的方式將發送幀直接發送至DUT;當應用場景為FPGA原型測試時,則需對發送幀進行轉換 后,通過驅動實體測試儀表執行發送; 步驟S3中,當應用場景為系統功能模型測試或軟硬件協同仿真測試時,是以接收消息 的形式獲取DUT輸出的幀信息;當應用場景為FPGA原型測試時,則需通過實體測試儀表采集 DUT輸出的幀信息,然后再對實體測試儀表采集的幀信息進行轉換后接收。8. 如權利要求5所述的實現高效測試的測試方法,其特征在于:步驟S1中,對測試用例 中的數據發送、接收期望進行配置時,數據發送的配置內容包括:發送端口號、幀數量、幀長 度、幀內容和發送模式;接收期望的配置內容包括:有效性檢查模式、有效性檢查內容、期望 接收的端口號、期望收幀數量、期望收幀長度和期望幀內容; 步驟S2具體包括以下步驟: 步驟S201、配置合法性檢驗:判斷測試用例中數據發送、接收期望的配置是否合法,若 是,轉入步驟S202;否則,給出錯誤提示并結束; 步驟S202、期望池確定:根據測試用例中有關接收期望的配置,組建出期望池,轉入步 驟S203; 步驟S203、發送幀內容封裝:根據測試用例中已設的協議域信息以及Payload信息,完 成發送幀內容的封裝,發送幀內容中包含期望池,轉入步驟S204; 步驟S204、發送幀描述加載:根據測試用例中數據發送、接收期望的配置得到幀描述信 息,幀描述信息包括:發送端口號、期望接收的端口號、流ID、包ID、丟棄指示、ICRC驗證值; 將幀描述信息加載到發送幀中,轉入步驟S205; 步驟S205、發送幀發送:按照測試用例中所配置的發送模式,將加載有幀描述信息的發 送幀發送至DUT;并將該發送幀以Log文件的形式存儲。9. 如權利要求8所述的實現高效測試的測試方法,其特征在于,步驟S4具體包括以下操 作: 步驟S401、幀描述解析:從接收幀中解析出幀描述信息,檢查幀描述信息是否合法,若 是,轉入步驟S402;若否,給出幀描述不合法的錯誤提示,結束; 步驟S402、接收存儲及統計:將接收幀以Log文件的形式存儲,并對收發包進行統計,轉 入步驟S403; 步驟S403、超時檢查:判斷接收幀是否是在超時時間內發送的有效幀,若是,轉入步驟 S404;否則,給出超時錯誤提示,結束; 步驟S404、丟棄性檢查:根據解析出的幀描述信息的丟棄指示,判斷接收幀是否在發送 時標識為期望丟棄的幀,以驗證DUT的丟棄、轉發行為的正確性,若是,給出丟棄包錯誤提 示,結束;否則,轉入步驟S405; 步驟S405、接收端口檢查:判斷接收幀的接收端口是否正確,以驗證DUT的轉發路徑的 正確性,若是,轉入步驟S406;否則,給出收包端口錯誤的提示,結束; 步驟S406、有效性檢查:從IP檢查、FCS檢查、幀長度檢查、ICRC檢查中選擇一種或多種 檢查模式,對接收幀的合法性進行檢查,若檢查通過,則轉入步驟S5;若檢查未通過,則給出 相應錯誤提示后,結束。10.如權利要求8所述的實現高效測試的測試方法,其特征在于,步驟S5具體包括以下 操作: 步驟S501:確定比對模式,若為絕對匹配模式,轉入步驟S502;若為庫匹配模式,轉入步 驟S503; 步驟S502:選擇期望池中幀描述信息與之匹配的期望幀;將該期望幀與接收幀信息逐 一比對,只有接收幀與期望幀的信息完全匹配才判定為正確的接收;否則,判定為錯誤的接 收,給出具體不匹配的信息提示并保存到Log文件中,結束; 步驟S503:將接收幀信息與期望池中的期望幀逐一比對,只要存在匹配的期望幀,則判 定為正確的接收;否則,判定為錯誤的接收,給出錯誤信息并保存到Log文件中,結束。
【文檔編號】G01R31/28GK105974297SQ201610225832
【公開日】2016年9月28日
【申請日】2016年4月12日
【發明人】范新越, 袁博滸
【申請人】烽火通信科技股份有限公司