軟件所在圖數據庫系統測試方面取得進展
文章來源: | 發布時間:2022-07-18 | 【打印】 【關閉】
近日,軟件所軟件工程技術研究開發中心團隊在圖數據庫系統測試方法研究方面取得進展。該研究提出了模型驅動的圖數據庫系統查詢生成方法和隨機差分測試方法,能夠有效的檢測圖數據庫系統中存在的邏輯錯誤,幫助開發人員定位代碼缺陷,為提升圖數據庫系統自動化測試能力起到重要支撐作用。
圖數據庫系統支持大規模圖數據的高效存儲和訪問,已廣泛應用于社交網絡、醫療健康、欺詐檢測、知識圖譜等領域。因此,確保圖數據庫系統的正確執行非常重要。然而,圖數據庫系統中存在邏輯錯誤,會導致用戶無法查詢到期望的結果,甚至引發嚴重后果(例如錯誤的醫療診斷等)。這些邏輯錯誤很關鍵且不容易被開發人員發現。
針對此問題,團隊提出Grand,可以自動發現使用Gremlin查詢語言的圖數據庫系統中邏輯錯誤。該方法的核心思想是為多個圖數據庫系統構建語義等價的圖數據庫,并比較同一查詢語句在這些圖數據庫中的查詢結果,如查詢結果不一致則意味著存在潛在的邏輯錯誤。為了高效的測試圖數據庫系統,團隊提出了一個模型驅動的查詢生成方法來生成有效的Gremlin查詢,以及一個數據映射方法來統一不同圖數據庫系統的查詢結果格式。實驗結果表明,該方法在6個流行的圖數據庫系統中發現了21個邏輯錯誤,其中18個被確認,7個被修復。
相關成果以“Finding Bugs in Gremlin-Based Graph Database Systems via Randomized Differential Testing”為題被軟件工程領域頂級學術會議ISSTA 2022錄用。該論文的第一作者為博士生鄭瑩瑩,通訊作者為竇文生 副研究員及王偉研究員。該研究獲國家自然科學基金、中國科學院前沿科學項目及中國科學院青年創新促進會等項目支持。