国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種數(shù)據庫兼容性檢測方法及設備的制造方法

      文檔序號:9750698閱讀:268來源:國知局
      一種數(shù)據庫兼容性檢測方法及設備的制造方法
      【技術領域】
      [0001]本發(fā)明涉及通信技術領域,特別涉及一種數(shù)據庫兼容性檢測方法。本發(fā)明同時還涉及一種數(shù)據庫兼容性檢測設備。
      【背景技術】
      [0002]隨著數(shù)據存儲技術的發(fā)展,DBMS (Database Management System,數(shù)據庫管理系統(tǒng))以及SQL (Structured Query Language,結構化查詢語言)越來越為人們所重視。數(shù)據庫服務器一般指代通用關系型數(shù)據庫管理系統(tǒng),屬于系統(tǒng)軟件類型??梢允浅墒旆€(wěn)定的商業(yè)數(shù)據庫,例如,oracle,可以是開源的或者自研的數(shù)據庫軟件,例如,mysql、OceanBase等。而SQL則是一種數(shù)據庫查詢和程序設計語言,用于存取數(shù)據以及查詢、更新和管理關系數(shù)據庫系統(tǒng);同時也是數(shù)據庫腳本文件的擴展名。SQL不要求用戶指定對數(shù)據的存放方法,也不需要用戶了解具體的數(shù)據存放方式,所以具有完全不同底層結構的不同數(shù)據庫系統(tǒng),可以使用相同的結構化查詢語言作為數(shù)據輸入與管理的接口。結構化查詢語言語句可以嵌套,這使它具有極大的靈活性和強大的功能。
      [0003]數(shù)據庫軟件是一種比較底層的系統(tǒng)支撐軟件,一般會有設計、開發(fā)、測試等角色,各司其職,當一個數(shù)據庫版本開發(fā)完成后,就會交付到測試組進行產品驗證。測試人員會根據產品的設計說明書和SQL指導手冊、接口文檔等技術資料,編寫SQL測試用例。當一個新版本出來后,用上一個版本的case庫回歸老功能,同時,根據新版本的變更說明,補充新
      Case0
      [0004]目前的數(shù)據庫領域的產品種類非常多,這些數(shù)據庫均支持標準的SQL語法和JDBC訪問接口。但是對于成長期的數(shù)據庫來說,其架構經常變化,版本迭代很快,這樣會造成SQL語法和API訪問接口也會變動,給使用這些數(shù)據庫的應用系統(tǒng)APP帶來版本兼容性的風險。
      [0005]為了避免數(shù)據庫變動所帶來的兼容性問題,現(xiàn)有的測試方法從數(shù)據庫本身的角度出發(fā),把數(shù)據庫支持的SQL功能全部回歸測試一遍,這是一種通用的SQL回歸測試方法。具體地,現(xiàn)有技術中數(shù)據庫新版本的交付過程如下:
      [0006]首先,數(shù)據庫版本的SQL測試:
      [0007]I)根據SQL語法指導手冊,編寫case,構造case庫;
      [0008]2)數(shù)據庫新版本交付后,用上一個版本的case庫回歸測試;
      [0009]3)補充新的SQL用例到case庫;
      [0010]隨后進行以下業(yè)務應用的集成測試:
      [0011]I)大的版本變化,大回歸,全面測試;
      [0012]2)小的版本變化,小回歸,主要流程測試;
      [0013]在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)以上測試方法存在著以下問題:
      [0014]I)脫離了具體的業(yè)務應用場景,忽略了對業(yè)務邏輯的細微影響
      [0015]該情況下,數(shù)據庫版本的SQL本身可能是正確且符合預期的,但某個業(yè)務應用可能鎖定了某些SQL執(zhí)行結果的某個特定格式,這個格式的任何細微變化都會導致業(yè)務邏輯判斷錯誤,而這種格式的變化可能是新的數(shù)據庫版本本身就特意設計改進的地方。例如,空串(”)和空值(null)、時間字段格式、varchar長度限制、浮點數(shù)的精度、系統(tǒng)表定義等這些細微的變化,這些變化是開源或者自研數(shù)據庫產品在發(fā)展初期版本迭代中經常遇到的問題,不可避免。
      [0016]2)業(yè)務應用系統(tǒng)可能會漏測,把數(shù)據庫版本變化帶來的兼容性風險泄露到線上
      [0017]眾所周知,現(xiàn)在的很多業(yè)務應用系統(tǒng)是非常龐大的,業(yè)務邏輯復雜,特別是各種異常分支非常多,尤其是在互聯(lián)網領域,業(yè)務產品的更新迭代很快很頻繁,不可能每次測試都100%覆蓋到所有分支的SQL,很容易泄露掉一些細節(jié)變化帶來的兼容性風險。這些風險也許影響不會很大,例如,只是影響了 APP界面的顯示格式和用戶體驗,也許會將影響擴大,例如,浮點類型的精度可能會影響到涉及到金錢交易的問題。
      [0018]在數(shù)據庫更新迭代過程中,SQL語法比較大的變化一般在數(shù)據庫系統(tǒng)自身的SQL回歸測試中就能夠發(fā)現(xiàn),并預警出來,如果是非常細小的變化,不一定能夠及時傳遞到使用數(shù)據庫的業(yè)務應用端,即使事先知道了這些細小變化,業(yè)務應用的開發(fā)人員也很難在紛繁復雜的業(yè)務邏輯分支中很快找到受影響的點。因此,如何方便、快捷、高效地對數(shù)據庫的兼容性進行檢測,成為本領域技術人員亟待解決的技術問題。

      【發(fā)明內容】

      [0019]本發(fā)明提供了一種數(shù)據庫兼容性檢測方法,用以解決現(xiàn)有技術中數(shù)據庫兼容性檢測過程繁瑣以及效率低下的問題,該方法包括:
      [0020]獲取測試基準數(shù)據以及基準文件,所述基準文件是在針對在先數(shù)據庫執(zhí)行SQL回歸源文件后生成的,所述SQL回歸源文件根據所述測試基準數(shù)據生成,所述測試基準數(shù)據為所述在先數(shù)據庫以及待檢測數(shù)據庫中共有的且不會發(fā)生改變的數(shù)據集合;
      [0021]根據所述SQL回歸源文件對所述待檢測數(shù)據庫執(zhí)行SQL回放處理;
      [0022]將執(zhí)行所述SQL回放處理后所得到的結果文件與所述基準文件進行內容對比;
      [0023]若所述基準文件與所述結果文件的內容一致,則確認所述待檢測數(shù)據庫不存在兼容性問題;
      [0024]若所述基準文件與所述結果文件的內容不一致,則確認所述待檢測數(shù)據庫存在兼容性問題。
      [0025]相應地,本發(fā)明還提出了一種數(shù)據庫兼容性檢測設備,其特征在于,包括:
      [0026]獲取模塊,用于獲取測試基準數(shù)據以及基準文件,所述基準文件是在針對在先數(shù)據庫執(zhí)行SQL回歸源文件后生成的,所述SQL回歸源文件根據所述測試基準數(shù)據生成,所述測試基準數(shù)據為所述在先數(shù)據庫以及待檢測數(shù)據庫中共有的且不會發(fā)生改變的數(shù)據集合;
      [0027]處理模塊,用于根據所述SQL回歸源文件對所述待檢測數(shù)據庫執(zhí)行SQL回放處理;
      [0028]對比模塊,用于將執(zhí)行所述SQL回放處理后所得到的結果文件與所述基準文件進行內容對比;
      [0029]若所述基準文件與所述結果文件的內容一致,所述對比模塊確認所述待檢測數(shù)據庫不存在兼容性問題;
      [0030]若所述基準文件與所述結果文件的內容不一致,所述對比模塊確認所述待檢測數(shù)據庫存在兼容性問題。
      [0031]由此可見,通過應用本發(fā)明以上技術方案,在獲取測試基準數(shù)據以及基準文件之后,即根據SQL回歸源文件對待檢測數(shù)據庫執(zhí)行SQL回放處理;并將執(zhí)行SQL回放處理后所得到的結果文件與基準文件進行內容對比,基于對比結果是否一致確定是否存在兼容性問題。該方法不僅能夠高效可靠地發(fā)現(xiàn)數(shù)據庫版本變化可能引入的兼容性風險,而且簡單易行,便于實施。
      【附圖說明】
      [0032]圖1為本發(fā)明提出的一種數(shù)據庫兼容性檢測方法的流程示意圖;
      [0033]圖2為本發(fā)明具體實施例所提出的數(shù)據庫兼容性檢測示意圖;
      [0034]圖3為本發(fā)明提出的一種數(shù)據庫兼容性檢測設備的結構示意圖。
      【具體實施方式】
      [0035]如【背景技術】所述,如果數(shù)據庫新版本SQL有明顯的變動,業(yè)務的回歸測試一般是可以感知到的,如果數(shù)據庫版本SQL是細微的變動,數(shù)據庫測試人員會當作新的功能優(yōu)化,補充新的case,由于變化不大,業(yè)務的回歸測試也是小范圍的,諸如,空串(”)和空值(nulI)、時間字段格式、varchar長度限制、浮點數(shù)的精度、系統(tǒng)表定義等這些細微的變化很容易被泄露掉。目前只有把這些細節(jié)都測試完整,并通知要求業(yè)務系統(tǒng)測試人員進行一次全面的集成測試才能避免該問題,該方法耗時耗力,且效率低下。因此本申請通過把數(shù)據庫系統(tǒng)和業(yè)務應用融合起來,提供一種能夠盡量規(guī)避人為的疏忽以及簡單高效的兼容性檢測方法。
      [0036]如圖1所示,為本發(fā)明提出的一種數(shù)據庫兼容性檢測方法流程示意圖,包
      當前第1頁1 2 3 
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1