摘要:文章以國產化數據庫為對象,介紹了國產化數據庫管理系統的特點。并從鎖機制集成、標準符合性、DBMS組件運行性能等方面,提出了幾種國產化數據庫管理系統軟件測試方法,希望為國產數據庫管理系統的型號選型、性能評估提供一些參考。
關鍵詞:國產;數據庫管理系統;軟件測試
前言:在互聯網技術逐漸深入世界各個角落之際,網絡數據信息日益成為現代社會無法或缺的要素。為滿足民眾不斷增長的數據訪問速率、訪問量要求,數據信息的存儲技術也在不斷發展。而當前數據信息的存儲技術仍然存在一些問題。因此,利用軟件測試方法,進行國產化數據庫管理系統的測試分析非常必要。
一、國產化數據庫管理系統特點
1、資源需求低
國產化數據庫運行于嵌入式環境中,受嵌入式系統資源量的直接限制,運行時占用存儲資源、內存資源均較少。同時其可以在雷達跟蹤、指揮控制等強時效性系統中快速響應用戶數據高效處理請求[1]。
2、運行環境復雜
國產化數據庫具有專用性,僅可在特定軟硬件環境下運行。因數據信息的存儲領域軟硬件類別較為多樣,數據庫運行環境也較為復雜。與此同時,國產化數據庫也可以同時支持網狀模型與關系模型、SQL函數與ODBC標準,兼容性較強。
3、平臺無關性
國產化數據庫可以運行在多種類別軟硬件平臺下,運行在數據庫系統內的應用軟件不會隨著平臺類型的轉變而發生性能變化。同時由于國產化數據庫管理系統中數據、程序處于分割狀態,數據文件丟失時可保證關鍵數據的安全性。
二、國產化數據庫管理系統軟件測試方法
1、鎖機制集成測試
鎖機制集成測試主要借助相同序列前綴,將數據庫中鎖表操作視為一個序列,進行序列一致性狀態、相同狀態、相似狀態的逐一描述,生成一個相同的序列前綴,判定當前狀態敏感操作,此時,在Table鎖頭鏈表中Lock_request鏈僅有一個節點處于被授予狀態,其他新鎖請求均處于等待狀態。進而根據敏感操作q=(U,T1,TableA,X)將結果到達狀態劃分為Q1、Q2兩種。其中U表示鏈,T1表示事務,TableA表示節點,X表示鎖,前者表示鎖頭鏈表后鎖請求僅有一節點處于被授予狀態;后者則表示鎖頭鏈表后表示對其加X鎖請求節點消失。據此,有針對性地生成序列變體并將敏感操作剔除,獲得用例集合。最終運行測試用例,檢測數據庫鎖表是否達到正確狀態,是則結束并返回測試結果,反之則尋找BUG后返回測試結果。
2、ODBC標準符合性測試
ODBC標準符合性主要指以某數據庫產品以及其附屬ODBC驅動程序為對象,利用測試用例或工具,進行SQL符合性測試、接口符合性測試,判定國產化數據庫是否正確符合ODBC標準[2]。以2007年發行的虛谷共用數據庫V4.0配套驅動程序rhodbc為例,可以利用若干臺個人計算機與局域網搭建測試環境。其中個人計算機CPU為Intel Pentium IV、硬盤為80GB、內存為512MB,軟件為Microsoft Windows Server2010,逐次開展SQL符合性測試、接口符合性測試。
SQL符合性測試主要指根據國內標準SQL-92規范,提取SQL符合性特性E01~E06、T01-T24、I01~I25方法,提交執行SQL Test Suite中的runsql.all文件指示的全部.sql腳本中SQL語句、附錄B中關于SQLGetInfo函數規則中的函數驗證輸出值,開展SQL語法的支持性測試、SQLGetInfo符合性測試,分別打開runsql.all、odbcte32.exe,進而打開查詢分析器以及一個.sql,確定是否完成,完成則結束,反之則利用所需用戶名登錄執行.SQL,確定是否成功,成功則進入“依次打開一個.sql”環節,反之則確定出錯SQL語句并尋找對應SQL符合性特性后填入測試報告。
接口符合性測試主要是依據接口符合性特性序號C01~C20、I01~I09,逐次推進QuikTest測試、新編測試用例補充測試、基于ODBC Test直接測試。在QuikTest測試時,需要新建模塊進行quiktest.def文件定義并在QuikTest工程中添加導出語句,進而連接QuikTest運行ODBC Test選擇執行RunAuto Tests功能,確定是否完成,完成則結束,反之從測試項中逐次執行下一項測試。新編測試用例補充測試、基于ODBC Test直接測試均需要探討QuikTest缺陷與缺失項,甄選需使用測試用例,確定全部完成后生成源碼并對比結果,反之則執行Run Auto Tests項并掉用被測標準函數,發現BUG后尋找出錯位置并修正rhodbc源代碼。
3、DBMS組件測試
DBMS組件測試主要是對國產化數據庫管理系統基本功能組件進行測試,涉及了支持數據類型、事務處理等內容。其中在支持數據類型測試時,需要在數據庫表中添加日期時間、字符串、二進制串、時間間隔等多類別數據[3]。添加完畢后,查詢所添加數據,判定查詢結果顯示數據正確與否,借此檢測數據庫支持多類型數據添加、查詢功能是否實現。同理,在已有數據庫表內進行數據類型的刪除、修改,進而查詢驗證數據庫管理系統是否支持多類別數據的刪除、修改;在事物處理測試時,需要利用事物控制語句,進行事物自動調架狀態設定并執行不包含begin的語句后回滾,查看回滾后結果判定軟件是否可自動提交事務。確定軟件可自動提交事務后,利用“begin”、“Submit”、“end”控制語句執行事務,查看并驗證相應提交功能正確與否。同理,查看語句執行終點數據庫管理事務回滾功能的準確性。
總結:
綜上所述,國產化數據庫管理系統具有資源需求低、運行環境復雜、平臺無關性等特點,為確定國產化數據庫運行功能,可以利用ODBC標準符合性測試、DBMS測試方法。根據測試結果,進行國產化數據庫軟件的編碼調整,保證國產化數據庫預期開發目標的順利實現。
參考文獻:
[1]孟偉君,陳瑞軍,劉占英,朝魯,劉楠.城軌云平臺及其承載業務系統測試研究[J].交通世界,2020(25):17-23.
[2]詹凱琦.計算機軟件開發中的數據庫測試技術討論[J].信息通信,2020(02):162-163.
[3]開金星.軟件自動化測試技術研究[J].信息系統工程,2021(01):76-77.
作者簡介:
龔小姣(1988-),女,漢族, 重慶人,碩士,供職于重慶軍工產業集團有限公司,工程師,研究方向:信號與信息處理,重慶市渝北區,401120