專利名稱:一種對可信計算密碼支撐平臺進行測試的測試方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及計算機領域,尤其涉及一種對可信計算密碼支撐平臺實施測試的測試方法及系統(tǒng)。
背景技術:
軟件測試是軟件質(zhì)量保證的重要手段,對于一些要求高可靠、高安全的軟件,測試費用可能相當于整個軟件項目開發(fā)所有費用的3至5倍,由此可見,要成功開發(fā)出高質(zhì)量的軟件產(chǎn)品,必須重視并加強軟件測試工作。可信計算密碼支持平臺是為用戶提供高安全與高可靠性的解決方案,該產(chǎn)品的質(zhì)量在各個方面都會有更高的要求,而現(xiàn)有的基于可信密碼服務模塊TSM (TCM ServiceModule)的可信計算密碼支撐平臺的測試,主要是基于業(yè)務流程對TSM功能進行測試,該 類測試方法基于業(yè)務功能通過調(diào)用可信計算密碼支撐平臺提供的可信計算接口 Tspi (TCGService Provider Interface)實施測試,測試工作主要集中在驗證業(yè)務的正向功能正確性,而對軟件健壯性等其他需要關注的軟件質(zhì)量特性在該類型測試中很難開展軟件測試工作;且測試系統(tǒng)中測試數(shù)據(jù)是硬編碼,測試過程中如果需要進行測試數(shù)據(jù)的增刪或者修改都會需要對測試系統(tǒng)的源文件進行修改??偟膩碚f,現(xiàn)有技術基于TSM的可信計算密碼支撐平臺的測試存在的缺點為缺乏TSM對外提供的可信計算接口 Tspi的測試功能;不能對測試行為進行實時記錄;缺乏測試統(tǒng)計及分析的功能;缺乏對原子行為拼裝測試用例的功能。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術問題是提供一種對可信計算密碼支撐平臺進行測試的測試方法及系統(tǒng),實現(xiàn)便捷的測試管理及測試統(tǒng)計分析功能。為了解決上述技術問題,本發(fā)明公開了一種對可信計算密碼支撐平臺進行測試的測試方法,包括如下步驟
獲取原子行為并封裝為測試用例;
解析測試用例以獲取測試用例數(shù)據(jù);
調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件;
將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件; 校驗測試實際值與測試期望值,并在所述日志文件中記錄校驗的結(jié)果;
分析統(tǒng)計測試結(jié)果并輸出測試統(tǒng)計結(jié)果。進一步,所述獲取原子行為并封裝為測試用例的步驟包括
建立測試用例模板;
獲取系統(tǒng)默認的測試用例及原子行為;
選擇需要的原子行為到測試用例模板中,封裝為測試用例;當完成測試需要用到多個測試用例時,循環(huán)以上步驟逐個封裝測試用例,建立測試用例庫。進一步,所述解析測試用例以獲取測試用例數(shù)據(jù)的步驟包括
識別輸入?yún)?shù)中是否有測試命令關鍵字,如果有,則觸發(fā)測試命令報警開關,如果沒有則跳過此步;
根據(jù)輸入?yún)?shù)識別測試用例名,若測試用例庫中存在該測試用例則運行測試用例,否則返回錯誤的測試用例名;
讀取已識別的測試用例名的數(shù)據(jù),作為測試用例的數(shù)據(jù)輸入,如果該測試用例對應多 條測試數(shù)據(jù),則循環(huán)讀取測試數(shù)據(jù)并輸入到測試用例。進一步,所述校驗測試實際值與測試期望值,并在所述日志文件中記錄校驗結(jié)果的步驟包括
獲取日志文件中測試期望值與測試實際值并進行校驗;
若測試期望值與實際值相符,則在日志中標識測試校驗結(jié)果為成功,在日志文件中記錄本條測試通過;
若測試期望值與實際值不相符,則在日志中標識測試校驗結(jié)果為失敗,在日志文件中記錄本條測試不通過,并繼續(xù)判斷測試命令報警開關的狀態(tài)。進一步,所述判斷測試命令報警開關的狀態(tài)包括
若測試期望值與實際值不相符,且測試命令報警開關為關閉,則在日志中打印期望結(jié)果和實際結(jié)果,并繼續(xù)后面的操作;
若測試期望值與實際值不相符,且測試命令報警開關為開啟,則在日志中打印期望結(jié)果與實際結(jié)果,并中斷測試過程。進一步,所述調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件的步驟包括
調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將輸入的測試數(shù)據(jù)根據(jù)數(shù)據(jù)類型打上數(shù)據(jù)標簽;
根據(jù)數(shù)據(jù)標簽按照輸入測試數(shù)據(jù)順序打印測試期望值到日志文件,并在日志文件中添加統(tǒng)計關鍵字。進一步,所述將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件的步驟包括
調(diào)用可信計算接口輸入解析的測試數(shù)據(jù)進行測試;
判斷可信計算接口測試結(jié)果返回的狀態(tài),若成功返回測試結(jié)果,則調(diào)用數(shù)據(jù)轉(zhuǎn)換接口對返回測試結(jié)果進行數(shù)據(jù)轉(zhuǎn)換,為返回測試結(jié)果的數(shù)據(jù)打上數(shù)據(jù)標簽,按照返回測試結(jié)果數(shù)據(jù)的順序打印返回實際值到日志文件,并在日志文件中添加統(tǒng)計關鍵字;若返回測試結(jié)果失敗,則直接輸出測試結(jié)果返回狀態(tài)到日志文件并添加統(tǒng)計關鍵字。進一步,所述分析統(tǒng)計測試結(jié)果并輸出測試統(tǒng)計結(jié)果包括
獲取測試過程中的日志文件;
根據(jù)日志文件中插入的統(tǒng)計關鍵字分析統(tǒng)計測試用例通過率;
輸出測試統(tǒng)計結(jié)果。本發(fā)明還公開了一種對可信計算密碼支撐平臺進行測試的測試系統(tǒng),包括測試用例配置模塊、測試用例解析模塊、測試執(zhí)行模塊、測試數(shù)據(jù)校驗模塊、測試日志分析模塊;其中,
所述測試用例配置模塊,用于獲取原子行為并封裝為測試用例;
所述測試用例解析模塊,用于根據(jù)輸入?yún)?shù)對測試用例進行解析,獲取測試用例數(shù)
據(jù);
所述測試執(zhí)行模塊,用于對解析的測試用例數(shù)據(jù)進行轉(zhuǎn)換并執(zhí)行測試;
所述測試數(shù)據(jù)校驗模塊,用于對測試實際值與測試期望值進行校驗,如果兩者相符則校驗成功,并在日志文件中記錄本條測試通過,否則在日志文件中記錄本條測試不通過;所述測試日志分析模塊,用于統(tǒng)計測試用例通過率并輸出測試統(tǒng)計結(jié)果。進一步,所述測試執(zhí)行模塊包括數(shù)據(jù)轉(zhuǎn)換接口和可信計算接口 ;其中,
所述數(shù)據(jù)轉(zhuǎn)換接口,用于將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件;所述數(shù)據(jù)轉(zhuǎn)換接口進一步包括對數(shù)據(jù)進行字節(jié)序轉(zhuǎn)換并打包的打包單元和傳輸數(shù)據(jù)的調(diào)試單元;
所述可信計算接口,用于將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件。采用本發(fā)明對可信計算密碼支撐平臺進行測試能夠記錄詳細的測試行為日志,測試用例基于本發(fā)明的運行能夠自動統(tǒng)計測試結(jié)果以及錯誤日志收集,本發(fā)明還提供了按照測試行為配置測試用例的功能,提高了測試的效率。
圖I為本發(fā)明測試方法的流程 圖2為本發(fā)明數(shù)據(jù)轉(zhuǎn)換接口(Tspi)進行數(shù)據(jù)轉(zhuǎn)換的邏輯示意 圖3為本發(fā)明打包單元(Bsg)將輸入數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序字節(jié)流的流程 圖4為本發(fā)明調(diào)試單元(Debug)將轉(zhuǎn)換后的字節(jié)序按照預定的輸出格式輸出流程圖; 圖5為本發(fā)明可信計算接口(Tspi)執(zhí)行測試的流程 圖6為本發(fā)明校驗過程邏輯 圖7為本發(fā)明測試系統(tǒng)的邏輯結(jié)構(gòu)圖。
具體實施例方式以下結(jié)合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。本發(fā)明一實施例公開了一種對可信計算密碼支撐平臺進行測試的測試方法,圖I所示為本發(fā)明測試方法的流程圖,如圖I所示,該方法包括
步驟101:獲取原子行為并封裝為測試用例;
其中,所述測試用例(Test Case)是為某個特殊目標而編制的一組測試輸入條件、執(zhí)行條件以及預期結(jié)果,以便測試某個程序路徑或核實是否滿足某個特定需求;原子行為是指描述測試的輸入條件、執(zhí)行條件以及預期的輸出結(jié)果的某一個具體的行為步驟。在本實施例中,所述封裝測試用例的過程為首先啟動測試用例配置模塊,建立新的測試用例模板,然后讀取系統(tǒng)中默認的測試用例及原子行為,選擇需要的原子行為或默認的測試用例到測試用例模板中,也可以根據(jù)需要人為進行修改后再添加到測試用例模板中,最后將添加或修改后的測試用例模板封裝成為一個完整的測試用例;當然,在完成一件測試時,可能會需要用到多個測試用例,此時可以根據(jù)測試計劃通過上述封裝過程,配置需要的多個測試用例,并將配置好的測試用例保存,形成測試用例庫。步驟102 :解析測試用例以獲取測試用例數(shù)據(jù);
其中,所述輸入?yún)?shù)是指觸發(fā)測試用例運行的關鍵字,包括測試命令關鍵字及測試用例名關鍵字;所述測試用例數(shù)據(jù)是指為某個測試用例而編制的一組測試輸入條件。在本實施例中,對測試用例進行解析的過程的是識別輸入?yún)?shù)中是否有測試命令關鍵字,在本實施例中,可以事先設置一個關鍵字(如A)代表測試命令關鍵字存儲在系統(tǒng)中,如輸入?yún)?shù)中含有關鍵字A,則觸發(fā)測試命令報警開關,如果沒有則跳過此步繼續(xù)解析后面的部分;然后根據(jù)輸入?yún)?shù)識別測試用例名,若測試用例庫中存在該測試用例名則運行該測試用例,否則返回錯誤的測試用例名。所述運行測試用例,是指讀取測試用例對應的測試數(shù)據(jù),作為測試用例的數(shù)據(jù)輸入,如果該測試用例對應多條測試數(shù)據(jù),則循環(huán)讀取測試數(shù)據(jù)并輸入到測試用例。繼續(xù)解析輸入?yún)?shù)是否還有待執(zhí)行的測試用例,如果存在則循環(huán) 上述解析過程,直到解析完測試用例庫中與輸入?yún)?shù)對應的所有測試用例為止。步驟103 :調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件;
其中,所述測試期望值是指執(zhí)行測試輸入條件的預期結(jié)果,在本實施例中,預期結(jié)果經(jīng)數(shù)據(jù)轉(zhuǎn)換接口(Tsip)轉(zhuǎn)換數(shù)據(jù)類型后輸出到日志文件。其中,所述數(shù)據(jù)轉(zhuǎn)換接口(Tsip)包括對數(shù)據(jù)進行字節(jié)序轉(zhuǎn)換并打包的打包單元(Bsg)和傳輸數(shù)據(jù)的調(diào)試單元(Debug);所述可信計算接口是TSM提供的Tspi接口。圖2為本發(fā)明數(shù)據(jù)轉(zhuǎn)換接口(Tspi)進行數(shù)據(jù)轉(zhuǎn)換的邏輯示意圖,如圖2所示在本實施例中,將解析的測試用例數(shù)據(jù)輸入數(shù)據(jù)轉(zhuǎn)換接口(Tsip)進行數(shù)據(jù)轉(zhuǎn)換的過程是首先調(diào)用打包單元(Bsg),將輸入的數(shù)據(jù)按照輸入次序轉(zhuǎn)換為網(wǎng)絡字節(jié)序字節(jié)流并打包,如圖3為打包單元(Bsg)將輸入數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序字節(jié)流的流程圖,如圖3所示為每個輸入數(shù)據(jù)添加一個命令序列號,用于后期命令數(shù)據(jù)輸出格式的控制,并為每個類型的輸入數(shù)據(jù)添加類型標識符,表示數(shù)據(jù)類型以及數(shù)據(jù)長度,根據(jù)數(shù)據(jù)標識的類型以及數(shù)據(jù)長度進行主機字節(jié)序到網(wǎng)絡字節(jié)序的轉(zhuǎn)換,并按照輸出數(shù)據(jù)的次序存儲轉(zhuǎn)換后的自節(jié)序到指定的內(nèi)存地址,并判斷是否還有未轉(zhuǎn)換的數(shù)據(jù),如果有則循環(huán)執(zhí)行轉(zhuǎn)換過程,直到將輸入數(shù)據(jù)都轉(zhuǎn)換為網(wǎng)絡字節(jié)序字節(jié)流,最后返回存儲字節(jié)序的內(nèi)存地址以及有效字節(jié)序長度。然后通過調(diào)試單元(Debug)進行數(shù)據(jù)傳輸,如圖4為調(diào)試單元(Debug)將轉(zhuǎn)換后字節(jié)序按照預定的輸出格式輸出流程圖,如圖4所示根據(jù)數(shù)據(jù)標簽按照輸入數(shù)據(jù)順序?qū)⑥D(zhuǎn)換成網(wǎng)絡字節(jié)序的輸入數(shù)據(jù)字節(jié)流(測試期望值)打印到日志文件,并在日志文件中添加統(tǒng)計關鍵字,其過程為從輸入的字節(jié)序中解析出打包過程中添加的命令序列號,在命令日志格式模板中尋找命令序列號對應的模板,如果找到對應的模板,則進一步判斷本數(shù)據(jù)為輸入還是輸出數(shù)據(jù),分別進入輸入、輸出數(shù)據(jù)打印,并按照命令日志格式打印數(shù)據(jù)到日志文件;如果沒有找到對應的模板,則退出打印模式,在本實施例中,命令日志格式模板包括如下內(nèi)容
[命令序列號編號 命令序列號名稱輸入數(shù)據(jù)標識
數(shù)據(jù)I名稱,數(shù)據(jù)I長度,數(shù)據(jù)I結(jié)束符 數(shù)據(jù)2名稱,數(shù)據(jù)2長度,數(shù)據(jù)2結(jié)束符
輸入數(shù)據(jù)結(jié)束標識 輸出數(shù)據(jù)標識
數(shù)據(jù)I名稱,數(shù)據(jù)I長度,數(shù)據(jù)I結(jié)束符 數(shù)據(jù)2名稱,數(shù)據(jù)2長度,數(shù)據(jù)2結(jié)束符
輸出數(shù)據(jù)結(jié)束標識]
其中,所述統(tǒng)計關鍵字是指對某一類別數(shù)據(jù)、條件或結(jié)果使用某個便于統(tǒng)計的固定字段進行標識,如[OutPut]、[Command]、[Pass]、[Failed]等。步驟104 :將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件;
圖5為本發(fā)明可信計算接口(Tspi)執(zhí)行測試的流程圖,如圖5所示在本實施例中,所述將解析的測試用例數(shù)據(jù)輸入可信計算接口(Tspi)進行測試的過程是調(diào)用可信計算接口(Tspi )輸入測試數(shù)據(jù)執(zhí)行測試,提交解析的測試用例數(shù)據(jù)(原始的主機字節(jié)序的輸入數(shù)據(jù))傳送給TSM提供的可信計算接口(Tspi)進行測試;對可信計算接口(Tspi)返回的測試結(jié)果狀態(tài)進行判斷,如果可信計算接口(Tspi)返回測試結(jié)果狀態(tài)為成功,則調(diào)用數(shù)據(jù)轉(zhuǎn)換接口(Tsip)將返回測試結(jié)果數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并根據(jù)預定的命令數(shù)據(jù)輸出次序,將轉(zhuǎn)換成網(wǎng)絡字節(jié)序的測試結(jié)果數(shù)據(jù)輸出到日志文件,并在日志文件中添加輸出統(tǒng)計關鍵字;如果可信計算接口(Tspi)返回測試結(jié)果狀態(tài)為失敗,則直接將測試結(jié)果返回狀態(tài)輸出到日志文件,并在日志文件中添加輸出統(tǒng)計關鍵字。其中所述輸出統(tǒng)計關鍵字包括[OutPut]、[Command]等。步驟105 :校驗測試實際值與測試期望值,并在所述日志文件中記錄校驗的結(jié)果; 圖6為校驗過程邏輯圖,如圖6所示在本實施例中,獲取測試用例的期望值與可信計
算接口(Tspi)返回的測試實際值并進行校驗;校驗結(jié)果為若測試期望值與實際值相符,則在日志中標識測試校驗結(jié)果為通過“Pass”,并進入下一個測試用例的校驗;若測試期望值與實際值不相符,則在日志中標識測試校驗結(jié)果為不通過“Failed”,并打印測試期望結(jié)果和實際結(jié)果,進一步判斷測試命令報警開關狀態(tài),如果測試命令報警開關為關閉時,則繼續(xù)后面的操作進入下一個測試用例的校驗;如果測試命令報警開關為打開時,則中斷測試過程。其中,所述測試實際值是指經(jīng)可信計算接口(Tspi)執(zhí)行測試輸入條件后返回的測試實際結(jié)果。步驟106 :分析統(tǒng)計測試結(jié)果并輸出測試統(tǒng)計結(jié)果。在本實施例中,首先獲取測試過程中的日志文件,從日志文件中讀取本次運行記錄的日志到緩存區(qū),從緩存區(qū)中讀取被測試的命令接口 ;然后根據(jù)日志文件中插入的統(tǒng)計關鍵字統(tǒng)計測試結(jié)果,通過統(tǒng)計關鍵字統(tǒng)計測試用例的數(shù)量以及命令發(fā)送次數(shù),計算出測試用例通過率,根據(jù)統(tǒng)計結(jié)果輸出測試報告,并收集失敗的測試用例。、
本發(fā)明另一實施例還公開了一種對可信計算密碼支撐平臺進行測試的測試系統(tǒng),包括測試用例配置模塊、測試用例解析模塊、測試執(zhí)行模塊、測試數(shù)據(jù)校驗模塊、測試曰志分析模塊。圖I所示為本發(fā)明測試系統(tǒng)的邏輯結(jié)構(gòu)圖,以下結(jié)合圖I對本發(fā)明實施例的測試系統(tǒng)進行詳細描述
測試用例配置模塊701,用于獲取原子行為并封裝為測試用例;
在本實施例中,封裝過程為首先啟動測試用例配置模塊,建立測試用例模板;獲取測試用例配置模塊默認的測試用例及原子行為,選擇需要的原子行為到測試用例模板中,封裝為測試用例;當完成測試需要用到多個測試用例時,循環(huán)上述步驟逐個封裝測試用例,建立測試用例庫。 測試用例解析模塊702,用于根據(jù)輸入?yún)?shù)對測試用例進行解析,獲取測試用例數(shù)據(jù);
在本實施例中,解析過程為首先識別輸入?yún)?shù)中是否有測試命令關鍵字,如果有,則觸發(fā)測試命令報警開關,否則跳過此步繼續(xù)后面的解析;然后根據(jù)輸入?yún)?shù)識別測試用例名,若測試用例庫中存在該測試用例則運行測試用例,否則返回錯誤的測試用例名;讀取已識別的測試用例名的數(shù)據(jù),作為測試用例的數(shù)據(jù)輸入,如果該測試用例對應多條測試數(shù)據(jù),則循環(huán)讀取測試數(shù)據(jù)并輸入到測試用例。測試執(zhí)行模塊703,用于對解析的測試用例數(shù)據(jù)進行轉(zhuǎn)換并執(zhí)行測試;
其中,測試執(zhí)行模塊703還包括用于對輸入的測試數(shù)據(jù)進行轉(zhuǎn)換的數(shù)據(jù)轉(zhuǎn)換接口(Tsip) 710和用于執(zhí)行測試命令進行測試的可信計算接口(Tspi) 720 ;所述數(shù)據(jù)轉(zhuǎn)換接口(Tsip) 710進一步包括對數(shù)據(jù)進行字節(jié)序轉(zhuǎn)換并打包的打包單元(Bsg) 711和傳輸數(shù)據(jù)的調(diào)試單元(Debug) 712。在本實施例中,所述對解析的測試用例數(shù)據(jù)進行轉(zhuǎn)換是通過調(diào)用數(shù)據(jù)轉(zhuǎn)換接口(Tsip) 710將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件;所述執(zhí)行測試是將解析的測試用例數(shù)據(jù)輸入到可信計算接口(Tspi) 720進行測試,并返回測試實際值到日志文件。測試數(shù)據(jù)校驗模塊704,用于對測試實際值與測試期望值進行校驗,如果兩者相符則校驗成功,并在日志文件中記錄本條測試通過,否則在日志文件中記錄本條測試不通過;
在本實施例中,首先獲取測試期望值與可信計算接口(Tspi)返回的實際值并進行校驗;若測試期望值與實際值相符,則在日志中標識測試校驗結(jié)果為成功;若測試期望值與實際值不相符,則在日志中標識測試校驗結(jié)果為失敗,并繼續(xù)判斷測試命令報警開關的狀態(tài),如果測試命令報警開關為關閉,則在日志中打印期望結(jié)果和實際結(jié)果,繼續(xù)后面的操作;如果測試命令報警開關為開啟,則在日志中打印期望結(jié)果與實際結(jié)果,中斷測試過程。測試日志分析模塊705,用于統(tǒng)計測試用例通過率并輸出測試統(tǒng)計結(jié)果;首先獲取測試過程中的日志文件,根據(jù)日志文件中插入的統(tǒng)計關鍵字統(tǒng)計測試結(jié)果并輸出測試統(tǒng)計結(jié)果。以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
權利要求
1.一種對可信計算密碼支撐平臺進行測試的測試方法,其特征在于,包括如下步驟 獲取原子行為并封裝為測試用例; 解析測試用例以獲取測試用例數(shù)據(jù); 調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件; 將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件; 校驗測試實際值與測試期望值,并在所述日志文件中記錄校驗的結(jié)果; 分析統(tǒng)計測試結(jié)果并輸出測試統(tǒng)計結(jié)果。
2.根據(jù)權利要求I所述的測試方法,其特征在于,所述獲取原子行為并封裝為測試用例的步驟包括 建立測試用例模板; 獲取系統(tǒng)默認的測試用例及原子行為; 選擇需要的原子行為到測試用例模板中,封裝為測試用例; 當完成測試需要用到多個測試用例時,循環(huán)以上步驟逐個封裝測試用例,建立測試用例庫。
3.根據(jù)權利要求I所述的測試方法,其特征在于,所述解析測試用例以獲取測試用例數(shù)據(jù)的步驟包括 識別輸入?yún)?shù)中是否有測試命令關鍵字,如果有,則觸發(fā)測試命令報警開關,如果沒有則跳過此步; 根據(jù)輸入?yún)?shù)識別測試用例名,若測試用例庫中存在該測試用例則運行測試用例,否則返回錯誤的測試用例名; 讀取已識別的測試用例名的數(shù)據(jù),作為測試用例的數(shù)據(jù)輸入,如果該測試用例對應多條測試數(shù)據(jù),則循環(huán)讀取測試數(shù)據(jù)并輸入到測試用例。
4.根據(jù)權利要求3所述的測試方法,其特征在于,所述校驗測試實際值與測試期望值,并在所述日志文件中記錄校驗結(jié)果的步驟包括 獲取日志文件中測試期望值與測試實際值并進行校驗; 若測試期望值與實際值相符,則在日志中標識測試校驗結(jié)果為成功,在日志文件中記錄本條測試通過; 若測試期望值與實際值不相符,則在日志中標識測試校驗結(jié)果為失敗,在日志文件中記錄本條測試不通過,并繼續(xù)判斷測試命令報警開關的狀態(tài)。
5.根據(jù)權利要求4所述的測試方法,其特征在于,所述判斷測試命令報警開關的狀態(tài)包括 若測試期望值與實際值不相符,且測試命令報警開關為關閉,則在日志中打印期望結(jié)果和實際結(jié)果,并繼續(xù)后面的操作; 若測試期望值與實際值不相符,且測試命令報警開關為開啟,則在日志中打印期望結(jié)果與實際結(jié)果,并中斷測試過程。
6.根據(jù)權利要求I 5任一項所述的測試方法,其特征在于,所述調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件的步驟包括 調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將輸入的測試數(shù)據(jù)根據(jù)數(shù)據(jù)類型打上數(shù)據(jù)標簽;根據(jù)數(shù)據(jù)標簽按照輸入測試數(shù)據(jù)順序打印測試期望值到日志文件,并在日志文件中添加統(tǒng)計關鍵字。
7.根據(jù)權利要求6所述的測試方法,其特征在于,所述將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件的步驟包括 調(diào)用可信計算接口輸入解析的測試數(shù)據(jù)進行測試; 判斷可信計算接口測試結(jié)果返回的狀態(tài),若成功返回測試結(jié)果,則調(diào)用數(shù)據(jù)轉(zhuǎn)換接口對返回測試結(jié)果進行數(shù)據(jù)轉(zhuǎn)換,為返回測試結(jié)果的數(shù)據(jù)打上數(shù)據(jù)標簽,按照返回測試結(jié)果數(shù)據(jù)的順序打印返回實際值到日志文件,并在日志文件中添加統(tǒng)計關鍵字;若返回測試結(jié)果失敗,則直接輸出測試結(jié)果返回狀態(tài)到日志文件并添加統(tǒng)計關鍵字。
8.根據(jù)權利要求7所述的測試方法,其特征在于,所述分析統(tǒng)計測試結(jié)果并輸出測試 統(tǒng)計結(jié)果包括 獲取測試過程中的日志文件; 根據(jù)日志文件中插入的統(tǒng)計關鍵字分析統(tǒng)計測試用例通過率; 輸出測試統(tǒng)計結(jié)果。
9.一種對可信計算密碼支撐平臺進行測試的測試系統(tǒng),其特征在于,包括測試用例配置模塊、測試用例解析模塊、測試執(zhí)行模塊、測試數(shù)據(jù)校驗模塊、測試日志分析模塊;其中, 所述測試用例配置模塊,用于獲取原子行為并封裝為測試用例; 所述測試用例解析模塊,用于根據(jù)輸入?yún)?shù)對測試用例進行解析,獲取測試用例數(shù)據(jù); 所述測試執(zhí)行模塊,用于對解析的測試用例數(shù)據(jù)進行轉(zhuǎn)換并執(zhí)行測試; 所述測試數(shù)據(jù)校驗模塊,用于對測試實際值與測試期望值進行校驗,如果兩者相符則校驗成功,并在日志文件中記錄本條測試通過,否則在日志文件中記錄本條測試不通過; 所述測試日志分析模塊,用于統(tǒng)計測試用例通過率并輸出測試統(tǒng)計結(jié)果。
10.根據(jù)權利要求8所述的測試系統(tǒng),其特征在于,所述測試執(zhí)行模塊包括數(shù)據(jù)轉(zhuǎn)換接口和可信計算接口 ;其中, 所述數(shù)據(jù)轉(zhuǎn)換接口,用于將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件;所述數(shù)據(jù)轉(zhuǎn)換接口進一步包括對數(shù)據(jù)進行字節(jié)序轉(zhuǎn)換并打包的打包單元和傳輸數(shù)據(jù)的調(diào)試單元; 所述可信計算接口,用于將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件。
全文摘要
本發(fā)明涉及一種對可信計算密碼支撐平臺進行測試的測試方法及系統(tǒng),所述測試方法包括獲取原子行為并封裝為測試用例;解析測試用例以獲取測試用例數(shù)據(jù);調(diào)用數(shù)據(jù)轉(zhuǎn)換接口將解析的測試用例數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡字節(jié)序,并輸出測試期望值到日志文件;將解析的測試用例數(shù)據(jù)輸入可信計算接口進行測試,并返回測試實際值到日志文件;校驗測試實際值與測試期望值,并在所述日志文件中記錄校驗的結(jié)果;分析統(tǒng)計測試結(jié)果并輸出測試統(tǒng)計結(jié)果。采用本發(fā)明的技術可以實現(xiàn)便捷的測試管理及測試統(tǒng)計分析功能,提高測試的效率。
文檔編號G06F11/36GK102736975SQ20111009250
公開日2012年10月17日 申請日期2011年4月13日 優(yōu)先權日2011年4月13日
發(fā)明者范琴 申請人:國民技術股份有限公司