本申請涉及固件測試,尤其涉及固件功能驗證方法、裝置、設(shè)備、存儲介質(zhì)及程序產(chǎn)品。
背景技術(shù):
1、隨著數(shù)據(jù)中心和高速網(wǎng)絡(luò)對帶寬需求的爆發(fā)式增長,四通道小型可插拔雙密度封裝(quad?small?form-factor?pluggable?double?density,qsfp-dd)、八通道小型可插拔封裝(octal?small?form-factor?pluggable,osfp)等可插拔高速光模塊已廣泛部署,通用管理接口規(guī)范(common?management?interface?specification,cmis)協(xié)議作為行業(yè)標(biāo)準(zhǔn),定義了光模塊與主機設(shè)備之間的管理接口規(guī)范。
2、然而,不同廠商在實現(xiàn)cmis協(xié)議時存在顯著差異,具體體現(xiàn)在功能實現(xiàn)、狀態(tài)機行為、異常上報機制等方面,這導(dǎo)致在多廠家混合部署場景下互通性問題頻發(fā)。尤其在多廠家混合部署的場景下,當(dāng)前方案嚴(yán)重依賴人工手動點測,容易耗時長、一致性差,難以深度驗證并量化評估多廠家光模塊cmis協(xié)議固件功能的“真實合規(guī)性”與“互通兼容性”。
技術(shù)實現(xiàn)思路
1、本申請的主要目的在于提供一種固件功能驗證方法、裝置、設(shè)備、存儲介質(zhì)及程序產(chǎn)品,旨在解決目前的固件功能驗證方案無法深度驗證并量化評估多廠家光模塊cmis協(xié)議固件功能的“真實合規(guī)性”與“互通兼容性”的技術(shù)問題。
2、為實現(xiàn)上述目的,本申請?zhí)岢鲆环N固件功能驗證方法,所述固件功能驗證方法包括:
3、讀取被測光模塊的模塊能力寄存器,得到所述被測光模塊的宣稱支持狀態(tài);
4、對所述被測光模塊的協(xié)議功能項進(jìn)行自動化測試,得到所述協(xié)議功能項的真實行為結(jié)果;
5、基于所述宣稱支持狀態(tài)對所述真實行為結(jié)果進(jìn)行逐項比對,得到固件功能驗證結(jié)果。
6、在一實施例中,所述對所述被測光模塊的協(xié)議功能項進(jìn)行自動化測試,得到所述協(xié)議功能項的真實行為結(jié)果的步驟,包括:
7、向所述被測光模塊下發(fā)協(xié)議功能項對應(yīng)的控制指令,并采集所述被測光模塊基于所述控制指令的固件響應(yīng)數(shù)據(jù),所述固件響應(yīng)數(shù)據(jù)包括寄存器狀態(tài)、中斷引腳電平、數(shù)字診斷監(jiān)控值、多功能診斷監(jiān)控值中的至少一種;
8、通過板載的業(yè)務(wù)信號發(fā)生與檢測單元,向所述被測光模塊的業(yè)務(wù)通道發(fā)送測試信號,并基于所述被測光模塊的回傳信號確定所述被測光模塊的底層硬件行為;
9、根據(jù)所述控制指令、所述固件響應(yīng)數(shù)據(jù)和所述底層硬件行為進(jìn)行端到端聯(lián)動驗證,得到所述協(xié)議功能項的真實行為結(jié)果。
10、在一實施例中,所述讀取被測光模塊的模塊能力寄存器,得到所述被測光模塊的宣稱支持狀態(tài)的步驟,包括:
11、讀取所述被測光模塊的模塊能力寄存器,得到所述被測光模塊遵循的協(xié)議版本和寄存器映射表;
12、根據(jù)所述協(xié)議版本確定所述被測光模塊宣稱解析規(guī)則;
13、根據(jù)所述寄存器映射表和所述宣稱解析規(guī)則確定所述被測光模塊的宣稱支持狀態(tài)。
14、在一實施例中,所述根據(jù)所述控制指令、所述固件響應(yīng)數(shù)據(jù)和所述底層硬件行為進(jìn)行端到端聯(lián)動驗證,得到所述協(xié)議功能項的真實行為結(jié)果的步驟,包括:
15、根據(jù)所述固件響應(yīng)數(shù)據(jù)、所述控制指令和所述底層硬件行為進(jìn)行關(guān)聯(lián)分析,確定所述協(xié)議功能項的邏輯一致性;
16、根據(jù)所述固件響應(yīng)數(shù)據(jù)以及所述底層硬件行為與所述協(xié)議版本對應(yīng)的協(xié)議規(guī)范進(jìn)行比對,確定所述協(xié)議功能項的協(xié)議符合性;
17、根據(jù)所述邏輯一致性和所述協(xié)議符合性確定所述協(xié)議功能項的真實行為結(jié)果。
18、在一實施例中,所述真實行為結(jié)果包括:有效和無效;
19、所述基于所述宣稱支持狀態(tài)對所述真實行為結(jié)果進(jìn)行逐項比對,得到固件功能驗證結(jié)果的步驟,包括:
20、基于所述宣稱支持狀態(tài)確定所述被測光模塊對所述協(xié)議功能項的功能支持狀態(tài),所述功能支持狀態(tài)包括:支持和不支持;
21、若所述功能支持狀態(tài)為支持,且所述真實行為結(jié)果為有效,則將所述固件功能驗證結(jié)果確定為一致;
22、若所述功能支持狀態(tài)為支持,且所述真實行為結(jié)果為無效,則將所述固件功能驗證結(jié)果確定為虛假宣稱;
23、若所述功能支持狀態(tài)為不支持,且所述真實行為結(jié)果為有效,則將所述固件功能驗證結(jié)果確定為過度實現(xiàn);
24、若所述功能支持狀態(tài)為不支持,且所述真實行為結(jié)果為無效,則將所述固件功能驗證結(jié)果確定為一致。
25、在一實施例中,所述方法還包括:
26、將不同廠家的被測光模塊對應(yīng)的所述固件功能驗證結(jié)果存儲至標(biāo)準(zhǔn)化測試數(shù)據(jù)庫;
27、響應(yīng)于用戶的查詢請求,根據(jù)所述標(biāo)準(zhǔn)化測試數(shù)據(jù)庫中的所述固件功能驗證結(jié)果生成多廠家固件功能比對報告。
28、此外,為實現(xiàn)上述目的,本申請還提出一種固件功能驗證裝置,所述固件功能驗證裝置包括:
29、數(shù)據(jù)獲取模塊,用于讀取被測光模塊的模塊能力寄存器,得到所述被測光模塊的宣稱支持狀態(tài);
30、功能測試模塊,用于對所述被測光模塊的協(xié)議功能項進(jìn)行自動化測試,得到所述協(xié)議功能項的真實行為結(jié)果;
31、功能驗證模塊,用于基于所述宣稱支持狀態(tài)對所述真實行為結(jié)果進(jìn)行逐項比對,得到固件功能驗證結(jié)果。
32、此外,為實現(xiàn)上述目的,本申請還提出一種固件功能驗證設(shè)備,所述設(shè)備包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述計算機程序配置為實現(xiàn)如上文所述的固件功能驗證方法的步驟。
33、此外,為實現(xiàn)上述目的,本申請還提出一種存儲介質(zhì),所述存儲介質(zhì)為計算機可讀存儲介質(zhì),所述存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上文所述的固件功能驗證方法的步驟。
34、此外,為實現(xiàn)上述目的,本申請還提供一種計算機程序產(chǎn)品,所述計算機程序產(chǎn)品包括計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上文所述的固件功能驗證方法的步驟。
35、本申請?zhí)岢龅囊粋€或多個技術(shù)方案,至少具有以下技術(shù)效果:
36、本申請通過讀取被測光模塊的模塊能力寄存器,得到被測光模塊的宣稱支持狀態(tài);對被測光模塊的協(xié)議功能項進(jìn)行自動化測試,得到協(xié)議功能項的真實行為結(jié)果;基于宣稱支持狀態(tài)對真實行為結(jié)果進(jìn)行逐項比對,得到固件功能驗證結(jié)果。由于是通過讀取被測光模塊的模塊能力寄存器,驗證系統(tǒng)能夠即插即用,自動適應(yīng)被測光模塊的個體差異,無需預(yù)先配置固定測試標(biāo)準(zhǔn)。通過將宣稱支持狀態(tài)對真實行為結(jié)果進(jìn)行逐項比對,實現(xiàn)了“廠家聲稱”和“實際表現(xiàn)”的逐項對照,使固件質(zhì)量從模糊描述轉(zhuǎn)變?yōu)榭闪炕闹笜?biāo),驗證結(jié)果可作為光模塊采購驗收、供應(yīng)商比對、故障定位的客觀證據(jù),使得不同廠家的驗證結(jié)果具有統(tǒng)一的數(shù)據(jù)格式和判定邏輯,可以方便地納入數(shù)據(jù)庫進(jìn)行橫向?qū)Ρ龋瑸槎鄰S家選型提供數(shù)據(jù)支撐。當(dāng)某功能項宣稱支持但實測無效時,系統(tǒng)自動標(biāo)記為異常,幫助用戶快速發(fā)現(xiàn)廠家夸大宣傳或固件實現(xiàn)缺陷。
1.一種固件功能驗證方法,其特征在于,所述方法包括:
2.如權(quán)利要求1所述的固件功能驗證方法,其特征在于,所述對所述被測光模塊的協(xié)議功能項進(jìn)行自動化測試,得到所述協(xié)議功能項的真實行為結(jié)果的步驟,包括:
3.如權(quán)利要求2所述的固件功能驗證方法,其特征在于,所述讀取被測光模塊的模塊能力寄存器,得到所述被測光模塊的宣稱支持狀態(tài)的步驟,包括:
4.如權(quán)利要求3所述的固件功能驗證方法,其特征在于,所述根據(jù)所述控制指令、所述固件響應(yīng)數(shù)據(jù)和所述底層硬件行為進(jìn)行端到端聯(lián)動驗證,得到所述協(xié)議功能項的真實行為結(jié)果的步驟,包括:
5.如權(quán)利要求1所述的固件功能驗證方法,其特征在于,所述真實行為結(jié)果包括:有效和無效;
6.如權(quán)利要求1所述的固件功能驗證方法,其特征在于,所述方法還包括:
7.一種固件功能驗證裝置,其特征在于,所述固件功能驗證裝置包括:
8.一種固件功能驗證設(shè)備,其特征在于,所述設(shè)備包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述計算機程序配置為實現(xiàn)如權(quán)利要求1至6中任一項所述的固件功能驗證方法的步驟。
9.一種存儲介質(zhì),其特征在于,所述存儲介質(zhì)為計算機可讀存儲介質(zhì),所述存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至6任一項所述的固件功能驗證方法的步驟。
10.一種計算機程序產(chǎn)品,其特征在于,所述計算機程序產(chǎn)品包括計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至6中任一項所述的固件功能驗證方法的步驟。