日韩中文字幕久久久97都市激情,久久91网,亚洲天堂最新,国产精品嫩草影院九色,亚洲午夜精品一本二本,精品少妇一区二区三区蜜桃,av一道本

一種測試方法、裝置、設(shè)備、系統(tǒng)、介質(zhì)和產(chǎn)品與流程

文檔序號:42170226發(fā)布日期:2025-06-13 16:27閱讀:15來源:國知局

本發(fā)明涉及存儲,特別是涉及一種測試方法、裝置、設(shè)備、系統(tǒng)、介質(zhì)和產(chǎn)品。


背景技術(shù):

1、隨著存儲技術(shù)的演進,磁盤陣列控制器芯片在主機存儲系統(tǒng)上占有越來越重要的地位,其穩(wěn)定性和可靠性顯得尤為重要。在磁盤陣列控制器芯片研發(fā)過程中,尤其是前期如何對磁盤陣列控制器芯片硬件進行全面地測試驗證是該磁盤陣列控制器芯片是否穩(wěn)定、可靠的關(guān)鍵性工作。

2、為了確保磁盤陣列控制器芯片的穩(wěn)定性和可靠性,常見的做法分為兩步:第一步,磁盤陣列控制器芯片硬件模塊級驗證。該方法常見于芯片研發(fā)早期階段,此時各個硬件模塊還存在問題,難以配合起來進行完整的主機下發(fā)io(input/output,)的處理。此時,常見的測試方法為在構(gòu)造不穩(wěn)定或者不存在硬件單元的環(huán)境下,通過構(gòu)造向被測試單元注入的測試數(shù)據(jù),再觸發(fā)被測試單元的運行,最終通過觀察被測試單元的行為是否符合預(yù)期來實現(xiàn)測試的目的。第二步,磁盤陣列控制器芯片功能級驗證。此時組成磁盤陣列控制器芯片的各硬件模塊已基本穩(wěn)定,整個磁盤陣列控制器芯片已具備了承載完整的主機輸入輸出的能力。此時,常見的測試方法為:1)基于其所掛載的主機,使用一些工具比如,fio(flexiblei/o?tester),隨機下發(fā)讀寫io請求的方法來對raid(redundant?array?of?independentdisks,獨立磁盤冗余陣列)芯片的可靠性進行測試。2)進一步地,通過主機長時間地下發(fā)讀寫io請求的方法來對磁盤陣列控制器芯片的穩(wěn)定性進行測試驗證。以上測試驗證方法分別從硬件模塊和整個芯片功能級驗證,硬件模塊級驗證重點在于單硬件模塊的功能測試、異常驗證等,比如:單硬件模塊基本業(yè)務(wù)功能的驗證,以及其應(yīng)對異常的功能的驗證等。此時的驗證環(huán)境,除本硬件模塊外,其依賴的其他硬件模塊、軟件模塊等都需要打樁或模擬。而整個芯片功能級驗證重點在于所有硬件模塊以及與其配合的軟件模塊一起作為磁盤陣列控制器芯片的整體對外展現(xiàn)的功能的驗證。此時的驗證環(huán)境與磁盤陣列控制器芯片的實際應(yīng)用場景更為接近。

3、上述測試驗證方法屬于常用的測試驗證方法,各有其測試驗證的側(cè)重點。即,或從單硬件模塊角度對單硬件模塊進行重點驗證,或從整個磁盤陣列控制器芯片整體功能角度進行用戶使用功能的驗證。但同時,也分別存在著測試驗證系統(tǒng)和方法上的不足。兩種均是在仿真環(huán)境下測試,測試效率低,并且僅是對于常規(guī)的io進行測試,使得性能測試精準(zhǔn)度不足。


技術(shù)實現(xiàn)思路

1、本發(fā)明實施例的目的是提供一種測試方法、裝置、設(shè)備、系統(tǒng)、介質(zhì)和產(chǎn)品,可以解決上述問題。

2、第一方面,本發(fā)明實施例提供一種測試方法,由具有磁盤陣列控制器芯片的電子設(shè)備執(zhí)行,所述測試方法,包括:在基于讀寫輸入輸出測試程序進行輸入輸出測試的過程中,獲取主機發(fā)送的測試管理命令,所述測試管理命令表征錯誤注入的輸入輸出管理命令;解析所述測試管理命令得到錯誤注入測試類型和對應(yīng)的相關(guān)參數(shù),并根據(jù)所述錯誤注入測試類型進行錯誤處理模式的變更,變更后的錯誤處理模式用于指示在測試中遇到異常時僅進行上報而不進行異常處理;根據(jù)所述錯誤注入測試類型和所述相關(guān)參數(shù),構(gòu)建模擬輸入輸出;將所述模擬輸入輸出注入目標(biāo)硬件單元以對所述目標(biāo)硬件單元進行執(zhí)行行為測試,其中,所述目標(biāo)硬件單元為所述相關(guān)參數(shù)中的硬件標(biāo)識對應(yīng)的硬件單元。

3、在一種可能的實現(xiàn)方式中,根據(jù)所述錯誤注入測試類型和所述相關(guān)參數(shù),構(gòu)建模擬輸入輸出,包括:若所述錯誤注入測試類型為第一類型或第二類型,則根據(jù)所述相關(guān)參數(shù)中的任務(wù)描述、任務(wù)類型和數(shù)據(jù),構(gòu)造第一任務(wù)鏈對應(yīng)的模擬輸入輸出;所述第一類型表示硬件單元異常類型,所述第二類型表示硬件單元高負荷類型;若所述錯誤注入測試類型為第三類型,則利用固件輸入輸出引擎模塊確定目標(biāo)輸入輸出;并根據(jù)所述目標(biāo)輸入輸出,構(gòu)造第二任務(wù)鏈對應(yīng)的模擬輸入輸出;所述第三類型表示特定輸入輸出類型,所述目標(biāo)輸入輸出是固件輸入輸出引擎模塊中的大于所述相關(guān)參數(shù)中的目標(biāo)輸入輸出大小的、且與所述相關(guān)參數(shù)中的輸入輸出類型相同的輸入輸出。

4、在一種可能的實現(xiàn)方式中,若所述錯誤注入測試類型為第一類型或第二類型,則根據(jù)所述相關(guān)參數(shù)中的任務(wù)描述、任務(wù)類型和數(shù)據(jù),構(gòu)造第一任務(wù)鏈對應(yīng)的模擬輸入輸出,包括:若所述錯誤注入測試類型為第一類型,則根據(jù)所述相關(guān)參數(shù)中的所述任務(wù)描述、所述任務(wù)類型和所述數(shù)據(jù),構(gòu)造所述第一任務(wù)鏈對應(yīng)的模擬輸入輸出;若所述錯誤注入測試類型為第二類型,則根據(jù)所述相關(guān)參數(shù)中的所述任務(wù)描述、所述任務(wù)類型、任務(wù)次數(shù)和所述數(shù)據(jù),構(gòu)造所述第一任務(wù)鏈對應(yīng)的模擬輸入輸出。

5、在一種可能的實現(xiàn)方式中,所述第一任務(wù)鏈包括至少一個硬件單元對應(yīng)的任務(wù)描述。

6、在一種可能的實現(xiàn)方式中,利用固件輸入輸出引擎模塊確定目標(biāo)輸入輸出之后,還包括:暫停所述固件輸入輸出引擎模塊中的所述目標(biāo)輸入輸出的執(zhí)行操作;相應(yīng)的,將所述模擬輸入輸出注入目標(biāo)硬件單元以對所述目標(biāo)硬件單元進行執(zhí)行行為測試之后,還包括:在完成行為測試后,恢復(fù)所述固件輸入輸出引擎模塊中的所述目標(biāo)輸入輸出的執(zhí)行操作。

7、在一種可能的實現(xiàn)方式中,根據(jù)所述目標(biāo)輸入輸出,構(gòu)造第二任務(wù)鏈對應(yīng)的模擬輸入輸出,包括:若所述目標(biāo)輸入輸出的數(shù)量是多個,則從目標(biāo)輸入輸出中選擇與所述目標(biāo)硬件單元對應(yīng)的輸入輸出,構(gòu)造第二任務(wù)鏈對應(yīng)的模擬輸入輸出。

8、在一種可能的實現(xiàn)方式中,解析所述測試管理命令得到錯誤注入測試類型和對應(yīng)的相關(guān)參數(shù)之后,還包括:將所述相關(guān)參數(shù)搬移至芯片內(nèi)部空間;相應(yīng)的,所述根據(jù)所述錯誤注入測試類型和所述相關(guān)參數(shù),構(gòu)建模擬輸入輸出,包括:從所述芯片內(nèi)部空間讀取所述相關(guān)參數(shù),并根據(jù)所述錯誤注入測試類型和所述相關(guān)參數(shù),構(gòu)建模擬輸入輸出。

9、在一種可能的實現(xiàn)方式中,將所述相關(guān)參數(shù)搬移至芯片內(nèi)部空間之后,還包括:若所述相關(guān)參數(shù)包括:任務(wù)描述和數(shù)據(jù),則檢查所述任務(wù)描述和所述數(shù)據(jù)的完整性;相應(yīng)的,所述根據(jù)所述錯誤注入測試類型進行錯誤處理模式的變更,包括:若所述任務(wù)描述和所述數(shù)據(jù)均通過完整性檢查,則根據(jù)所述錯誤注入測試類型進行錯誤處理模式的變更。

10、在一種可能的實現(xiàn)方式中,所述測試管理命令是所述主機將錯誤注入測試類型和所述相關(guān)參數(shù)編碼到非易失性內(nèi)存主機控制器接口規(guī)范協(xié)議的擴展命令格式中的相應(yīng)字段生成的;相應(yīng)的,所述解析所述測試管理命令得到錯誤注入測試類型和對應(yīng)的相關(guān)參數(shù),包括:按照錯誤注入定義表,解析所述測試管理命令,得到所述錯誤注入測試類型和所述相關(guān)參數(shù)。

11、在一種可能的實現(xiàn)方式中,所述錯誤注入定義表包括用以表示錯誤注入測試類型的操作碼字段、相關(guān)參數(shù)對應(yīng)的字段;其中,相關(guān)參數(shù)對應(yīng)的字段包括:任務(wù)描述、任務(wù)類型、任務(wù)次數(shù)、數(shù)據(jù)、輸入輸出類型、輸入輸出大小、硬件標(biāo)識、預(yù)期執(zhí)行結(jié)果。

12、在一種可能的實現(xiàn)方式中,將所述模擬輸入輸出注入目標(biāo)硬件單元以對所述目標(biāo)硬件單元進行執(zhí)行行為測試之后,還包括:獲取所述目標(biāo)硬件單元的執(zhí)行結(jié)果;將執(zhí)行結(jié)果和所述相關(guān)參數(shù)中的預(yù)期執(zhí)行結(jié)果進行比較。

13、在一種可能的實現(xiàn)方式中,還包括:獲取主機的讀寫輸入輸出測試程序下發(fā)的用于測試的主機輸入輸出;根據(jù)所述主機輸入輸出確定執(zhí)行單元;若所述執(zhí)行單元是固件輸入輸出引擎模塊,則發(fā)送所述主機輸入輸出至固件輸入輸出引擎模塊,以便于所述固件輸入輸出引擎模塊對所述主機輸入輸出進行拆分處理,并將拆分處理后的主機輸入輸出發(fā)送至相應(yīng)的硬件單元進行執(zhí)行行為測試;若所述執(zhí)行單元是硬件單元,則發(fā)送主機輸入輸出至相應(yīng)的硬件單元進行執(zhí)行行為測試。

14、在一種可能的實現(xiàn)方式中,發(fā)送主機輸入輸出至相應(yīng)的硬件單元進行執(zhí)行行為測試,包括:按照執(zhí)行步驟,拆分所述主機輸入輸出的存儲操作;確定拆分存儲操作得到的任務(wù)鏈中的各個任務(wù)對應(yīng)的硬件單元;基于所述主機輸入輸出依次將任務(wù)鏈中的各個任務(wù)發(fā)送至對應(yīng)的硬件單元進行執(zhí)行行為測試。

15、在一種可能的實現(xiàn)方式中,還包括:利用固件輸入輸出引擎模塊,對硬件單元轉(zhuǎn)交的主機輸入輸出進行拆分處理,并將拆分處理后的主機輸入輸出發(fā)送至相應(yīng)的硬件單元進行執(zhí)行行為測試。

16、第二方面,提供了一種測試裝置,包括:任務(wù)分發(fā)模塊,用于在基于讀寫輸入輸出測試程序進行輸入輸出測試的過程中,獲取主機發(fā)送的測試管理命令,所述測試管理命令表征錯誤注入的輸入輸出管理命令;注入管理模塊,用于解析所述測試管理命令得到錯誤注入測試類型和對應(yīng)的相關(guān)參數(shù),并根據(jù)所述錯誤注入測試類型進行錯誤處理模式的變更,變更后的錯誤處理模式用于指示在測試中遇到異常時僅進行上報而不進行異常處理;輸入輸出模擬功能模塊,用于根據(jù)所述錯誤注入測試類型和所述相關(guān)參數(shù),構(gòu)建模擬輸入輸出;將所述模擬輸入輸出注入目標(biāo)硬件單元以對所述目標(biāo)硬件單元進行執(zhí)行行為測試,其中,所述目標(biāo)硬件單元為所述相關(guān)參數(shù)中的硬件標(biāo)識對應(yīng)的硬件單元。

17、第三方面,提供了一種電子設(shè)備,包括:存儲器,用于存儲計算機程序;處理器,用于執(zhí)行所述計算機程序以實現(xiàn)如第一方面中任一可能的實現(xiàn)方式所示的測試方法對應(yīng)的操作。

18、第四方面,提供了一種測試系統(tǒng),包括:如第三方面所述的電子設(shè)備;主機,用于發(fā)送的測試管理命令至電子設(shè)備,并獲取測試結(jié)果。

19、在一種可能的實現(xiàn)方式中,所述主機還用于:獲取每個硬件單元的測試結(jié)果集,所述測試結(jié)果集包括多個錯誤注入測試類型各自對應(yīng)的結(jié)果子集;按照結(jié)果子集的每個測試結(jié)果的測試時間對每個錯誤注入測試類型繪制變化曲線;針對每個錯誤注入測試類型,根據(jù)對應(yīng)的變化曲線,確定性能分數(shù);根據(jù)多個錯誤注入測試類型各自對應(yīng)的性能分數(shù),確定每個硬件單元的性能。

20、第五方面,提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如第一方面中任一可能的實現(xiàn)方式所示的測試方法對應(yīng)的操作。

21、第六方面,提供了一種計算機程序產(chǎn)品,包括計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)根據(jù)第一方面中任一可能的實現(xiàn)方式所示的測試方法對應(yīng)的操作。

22、綜上所述,本發(fā)明提供的測試方法包括以下至少一種有益技術(shù)效果:在磁盤陣列控制器芯片真實工作環(huán)境下,獲取表征錯誤注入的輸入輸出管理命令的測試管理命令;解析該命令得到錯誤注入測試類型和對應(yīng)的相關(guān)參數(shù),并根據(jù)錯誤注入測試類型變更錯誤處理模式,使測試中遇到異常時僅上報而不處理,避免了異常處理對測試過程的干擾,確保測試能按預(yù)設(shè)的錯誤注入場景順利進行;根據(jù)錯誤注入測試類型和相關(guān)參數(shù)構(gòu)建模擬輸入輸出并注入目標(biāo)硬件單元進行執(zhí)行行為測試,實現(xiàn)了在基于讀寫輸入輸出測試程序進行輸入輸出測試的環(huán)境下,對特定硬件單元在特定錯誤場景下的精確測試,使得測試更加全面,測試精準(zhǔn)度更高。

23、進一步的,本發(fā)明的磁盤陣列控制器芯片測試裝置、設(shè)備、系統(tǒng)、介質(zhì)和產(chǎn)品,均具有上述技術(shù)效果。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1