專利名稱:數(shù)據(jù)生成方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及數(shù)據(jù)庫領域,尤其涉及一種數(shù)據(jù)生成方法及系統(tǒng)。
背景技術:
數(shù)據(jù)庫(Database,DB)是長期存儲在計算機內的、有組織的、可共享的、統(tǒng)一管理的數(shù)據(jù)集合,是一個按數(shù)據(jù)結構來存儲和管理數(shù)據(jù)的計算機軟件系統(tǒng)。目前,常用的數(shù)據(jù)庫有Oracle數(shù)據(jù)庫、SQL (Structured Query Language,結構化查詢語言)數(shù)據(jù)庫、Sybase數(shù)據(jù)庫等。軟件測試是指利用測試工具按照測試方案和流程對產(chǎn)品進行功能和性能測試。在軟件測試過程中,需要數(shù)據(jù)庫錄入測試數(shù)據(jù)。目前,測試數(shù)據(jù)的錄入主要有兩種方法,一種方法是通過軟件界面(或是直接編寫SQL語句)逐條錄入,即手動錄入測試數(shù)據(jù);另外一種方法是編寫程序,循環(huán)錄入該程序所指定規(guī)則的數(shù)據(jù)。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)采用現(xiàn)有技術錄入測試數(shù)據(jù)時,錄入過程繁瑣且耗時較長,測試數(shù)據(jù)的錄入效率較低;而且采用編寫的程序錄入測試數(shù)據(jù)時,由于該程序指定的規(guī)則有限,會使得錄入的測試數(shù)據(jù)不完整、不全面,導致錄入的數(shù)據(jù)與預期目標相
差較大。
發(fā)明內容
本發(fā)明的實施例提供一種數(shù)據(jù)生成方法及系統(tǒng),能夠向數(shù)據(jù)庫快速、高效的錄入完整、全面的測試數(shù)據(jù),從而在軟件測試過程中提高測試數(shù)據(jù)的錄入效率以及所錄入數(shù)據(jù)的質量。為達到上述目的,本發(fā)明的實施例采用如下技術方案:—方面,本發(fā)明實施例提供了一種數(shù)據(jù)生成方法,包括:分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則;根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。另一方面,本發(fā)明實施例還提供了一種數(shù)據(jù)生成系統(tǒng),包括:分析單元,用于分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則;生成單元,用于根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。本發(fā)明實施例提供的數(shù)據(jù)生成方法及系統(tǒng),能夠分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則,并根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。采用本發(fā)明實施例提供的方法及系統(tǒng),能夠向數(shù)據(jù)庫快速、高效的錄入完整、全面的測試數(shù)據(jù),從而提高測試數(shù)據(jù)的錄入效率,同時還能夠提高所錄入數(shù)據(jù)的質量。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實施例1提供的方法的流程示意圖;圖2為本發(fā)明實施例2提供的方法的流程示意圖;圖3至圖8為本發(fā)明實施例3提供的數(shù)據(jù)生成系統(tǒng)的結構示意圖。
具體實施例方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。實施例1本發(fā)明實施例提供了一種數(shù)據(jù)生成方法,如圖1所示,所述方法包括:101、數(shù)據(jù)生成系統(tǒng)分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息,獲取數(shù)據(jù)生成規(guī)則。具體的,所述配置信息包括所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息,或者用戶預設的配置信息;其中,所述數(shù)據(jù)表的配置信息包括當前數(shù)據(jù)庫中數(shù)據(jù)表的字段信息,所述字段信息包括該字段的字段名稱、類型、長度、注釋、默認值、屬性、自增類型、約束等信息;所述用戶預設的配置信息由用戶設定,用于表征符合用戶需求的數(shù)據(jù)生成規(guī)則。102、數(shù)據(jù)生成系統(tǒng)根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。具體的,數(shù)據(jù)生成系統(tǒng)生成的數(shù)據(jù)主要用于數(shù)據(jù)測試、模擬和演示等情況,尤其應用于自動化測試和數(shù)據(jù)演示方面。本發(fā)明實施例提供的數(shù)據(jù)生成方法,能夠分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則,并根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。采用本發(fā)明實施例提供的方法,能夠向數(shù)據(jù)庫快速、高效的錄入完整、全面的測試數(shù)據(jù),從而提高測試數(shù)據(jù)的錄入效率,同時還能夠提高所錄入數(shù)據(jù)的質量。實施例2本發(fā)明實施例提供了一種數(shù)據(jù)生成方法,如圖2所示,所述方法包括:201、數(shù)據(jù)生成系統(tǒng)獲取數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息,所述配置信息包括所述數(shù)據(jù)表中各字段的字段信息,所述字段信息包括該字段的字段名稱、類型、長度、注釋、默認值、屬性、自增類型、約束等信息。值得說明的是,數(shù)據(jù)生成系統(tǒng)也可以獲取用戶預設的配置信息,以確定數(shù)據(jù)生成規(guī)則。具體的,所述用戶預設的配置信息由用戶設定,用于表征用戶設定的數(shù)據(jù)生成規(guī)則。202、數(shù)據(jù)生成系統(tǒng)分析所述數(shù)據(jù)表中各字段的字段信息,具體包括分析所述各字段的字段名稱,獲取組成該字段名稱的英文單詞組。其中,字段類型和長度等已知條件可以由數(shù)據(jù)生成系統(tǒng)直接確定為數(shù)據(jù)生成規(guī)則中的相應部分。值得說明的是,本發(fā)明實施例提供的技術方案主要用于分析字段信息中的字段名稱和注釋,其中,分析字段名稱的實現(xiàn)方法與分析注釋信息的方法相似。為了便于理解,本發(fā)明實施例以分析字段名稱為例進行說明。具體的,數(shù)據(jù)生成系統(tǒng)可以采用如下方法分析數(shù)據(jù)表中各字段的字段名稱:由于數(shù)據(jù)表的字段名稱一般按照下劃線規(guī)則(如記錄工作郵箱的數(shù)據(jù)表的字段名稱可以為:w0rk_email)或駝峰規(guī)則(如記錄工作郵箱的數(shù)據(jù)表的字段名稱也可以為:workEmaiI)來命名,所以本實施例中的數(shù)據(jù)生成系統(tǒng)可以根據(jù)字段名稱中的非小寫字母進行分割,或者也可以直接根據(jù)大寫字母,下劃線對字段名稱進行分割,并過濾無實際意義的單字母、字符串(例如匈牙利命名規(guī)則的類型前綴、無實際意義的數(shù)字、縮寫等字符),獲取組成字段名稱的英文單詞組。例如:當字段名稱為WOrk_email時,數(shù)據(jù)生成系統(tǒng)可以獲取該字段名稱的英文單詞組為work和email兩部分;當字段名稱為workEmail時,數(shù)據(jù)生成系統(tǒng)可以獲取該字段名稱的英文單詞組為work和email兩部分;當字段名稱為CWorkEmail時,如果數(shù)據(jù)表定義中已經(jīng)包括類型定義,則數(shù)據(jù)生成系統(tǒng)可以獲取該字段名稱的英文單詞組為work和email兩部分;如果該字段的數(shù)據(jù)來源不是數(shù)據(jù)表,則數(shù)據(jù)生成系統(tǒng)可以通過c認定該字段為字符串類型,同時獲取該字段名稱的英文單詞組為work和email兩部分。值得說明的是,上述方法僅為本發(fā)明實施例提供的從數(shù)據(jù)表中各字段的字段名稱中獲取該字段名稱的英文字母組的一種實現(xiàn)方法,實際應用時不僅限于此。203、數(shù)據(jù)生成系統(tǒng)查詢規(guī)則數(shù)據(jù)庫,獲取所述各字段的可選規(guī)則。其中,所述規(guī)則數(shù)據(jù)庫中存儲有字段名稱和數(shù)據(jù)生成規(guī)則的對應關系,用于確定各字段的可選規(guī)則。具體的,數(shù)據(jù)生成系統(tǒng)可以查詢規(guī)則數(shù)據(jù)庫,獲取與所述英文單詞組中任意個英文單詞組合對應的數(shù)據(jù)生成規(guī)則。例如,根據(jù)步驟202中所舉示例,當數(shù)據(jù)生成系統(tǒng)獲取字段名稱的英文單詞組包括work和email兩部分時,則在規(guī)則數(shù)據(jù)庫中查詢work_email、work和email三個名稱對應的數(shù)據(jù)生成規(guī)則,從規(guī)則數(shù)據(jù)庫中返回的規(guī)則即為work_email字段的可選規(guī)則。進一步的,如果數(shù)據(jù)表中的字段名稱為A_B_C(A、B、C均為英文單詞),則數(shù)據(jù)生成系統(tǒng)獲取的字段名稱的英文單詞組包括單詞A、單詞B以及單詞C三個部分,則在規(guī)則數(shù)據(jù)庫中查詢包括單詞A、單詞B以及單詞C三個單詞中任意數(shù)量個英文單詞組合對應的數(shù)據(jù)生成規(guī)則,即在規(guī)則數(shù)據(jù)庫中查詢A、B、C、A_B、A_C、B_C以及A_B_C七個名稱對應的數(shù)據(jù)生成規(guī)則,從規(guī)則數(shù)據(jù)庫中返回的規(guī)則即為該字段的可選規(guī)則。值得說明的是,在獲得可選規(guī)則之后,將更新規(guī)則數(shù)據(jù)庫,完善字段與規(guī)則的對應關系。例如:當查詢work_email對應的數(shù)據(jù)生成規(guī)則時,如果查詢結果規(guī)則數(shù)據(jù)庫僅返回了名稱為“ emai I ”的數(shù)據(jù)生成規(guī)則,則將WOrk_emai I字段與“ emai I ”規(guī)則的對應關系插入到規(guī)則數(shù)據(jù)庫中。采用本方案,可以在下次查詢work_email字段時,能直接得到可選規(guī)則,并且使得數(shù)據(jù)生成系統(tǒng)系統(tǒng)具備一定的學習能力。優(yōu)選的,如果規(guī)則數(shù)據(jù)庫返回的可選規(guī)則不為空,則根據(jù)字段的長度、類型等已知屬性進一步過濾無效規(guī)則,例如:當指定字段的長度與返回的可選規(guī)則的長度不符時,則過濾掉該規(guī)則;如果可選規(guī)則為空,則數(shù)據(jù)生成系統(tǒng)根據(jù)已知字段屬性確定簡單基本的規(guī)則,如長度為36以內的字符串、格式為完整年月日的日期等??蛇x的,本發(fā)明實施例還提供了兩種獲取數(shù)據(jù)生成規(guī)則的方法,具體如下:(I)數(shù)據(jù)生成系統(tǒng)查詢分析數(shù)據(jù)表中的已存數(shù)據(jù),獲取所述已存數(shù)據(jù)的數(shù)據(jù)格式,確定與該數(shù)據(jù)格式相匹配的數(shù)據(jù)生成規(guī)則。(2)數(shù)據(jù)生成系統(tǒng)對數(shù)據(jù)表字段的驗證規(guī)則進行反向解析,獲取數(shù)據(jù)生成規(guī)則,具體包括:對所述數(shù)據(jù)表字段的驗證正則表達式進行反向解析,獲取當前數(shù)據(jù)庫的數(shù)據(jù)生成規(guī)則;或者編寫數(shù)據(jù)表字段的數(shù)據(jù)驗證規(guī)則的反向方法,獲取當前數(shù)據(jù)庫的數(shù)據(jù)生成規(guī)則。值得說明的是,本發(fā)明實施例提供的獲取數(shù)據(jù)生成規(guī)則的方法不僅限于此。204、數(shù)據(jù)生成系統(tǒng)根據(jù)獲取的各字段的生成規(guī)則生成數(shù)據(jù)。具體的,數(shù)據(jù)生成系統(tǒng)生成的數(shù)據(jù)主要用于數(shù)據(jù)測試、模擬和演示等情況,對自動化測試和數(shù)據(jù)演示有重要作用。值得說明的是,當數(shù)據(jù)生成系統(tǒng)獲取各字段的生成規(guī)則之后,可以采用但不限于如下方法生成數(shù)據(jù):數(shù)據(jù)生成系統(tǒng)通過預設程序生成符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù);或者數(shù)據(jù)庫通過字段定義的外鍵或用戶自定義的關聯(lián)外鍵,確定符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,獲取數(shù)據(jù);或者數(shù)據(jù)生成系統(tǒng)通過分類詞庫獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,從所述數(shù)據(jù)來源獲取數(shù)據(jù);或者數(shù)據(jù)生成系統(tǒng)通過網(wǎng)絡數(shù)據(jù)獲取數(shù)據(jù)來源,根據(jù)所述數(shù)據(jù)生成規(guī)則進行解析,從所述數(shù)據(jù)來源獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)。值得說明的是,本發(fā)明實施例中數(shù)據(jù)生成系統(tǒng)對數(shù)據(jù)表中注釋等文字型屬性的解析與字段名稱的解析過程類似,此處不再贅述。本發(fā)明實施例提供的數(shù)據(jù)生成方法,能夠分析數(shù)據(jù)表中的配置信息或者用戶預設的配置信息,獲取數(shù)據(jù)生成規(guī)則,并根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。采用本發(fā)明實施例提供的方法,能夠向數(shù)據(jù)庫快速、高效的錄入完整、全面的測試數(shù)據(jù),從而提高測試數(shù)據(jù)的錄入效率,同時還能夠提高所錄入數(shù)據(jù)的質量。實施例3本發(fā)明實施例提供了一種數(shù)據(jù)生成系統(tǒng),能夠實現(xiàn)上述方法實施例,如圖3所示,所述數(shù)據(jù)生成系統(tǒng)包括:分析單元31,用于分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則;生成單元32,用于根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。進一步的,如圖4所示,所述數(shù)據(jù)生成系統(tǒng)還包括第一獲取單元33或第二獲取單元34,其中:第一獲取單元33用于獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息,所述配置信息包括所述數(shù)據(jù)表中各字段的字段信息,所述字段信息包括所述數(shù)據(jù)庫中各字段的字段名稱;或者第二獲取單元34用于獲取用戶預設的配置信息,所述配置信息用于表征用戶設定的數(shù)據(jù)生成規(guī)則。進一步的,如圖5所示,所述分析單元31包括第一分析子單元311和第二分析子單元312,其中:第一分析子單元311用于當所述數(shù)據(jù)生成系統(tǒng)通過所述第一獲取單元33獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,分析所述數(shù)據(jù)表中各字段的字段名稱,獲取組成該字段名稱的英文單詞組,所述英文單詞組中包括至少一個英文單詞;第二分析子單元312用于查詢規(guī)則數(shù)據(jù)庫,獲取與所述英文單詞組中任意數(shù)量個英文單詞組合對應的數(shù)據(jù)生成規(guī)則,同時濾除無效的數(shù)據(jù)生成規(guī)則,其中,所述規(guī)則數(shù)據(jù)庫用于存儲所述數(shù)據(jù)庫中字段名稱的英文單詞與數(shù)據(jù)生成規(guī)則的對應關系,用于確定各字段可選的數(shù)據(jù)生成規(guī)則。根據(jù)圖4所述的數(shù)據(jù)生成系統(tǒng),進一步的,如圖6所示,所述分析單元31包括第三分析子單元313,用于當所述數(shù)據(jù)生成系統(tǒng)通過所述第一獲取單元33獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,分析數(shù)據(jù)表中的已存數(shù)據(jù),獲取所述已存數(shù)據(jù)的數(shù)據(jù)格式,確定與該數(shù)據(jù)格式相匹配的數(shù)據(jù)生成規(guī)則。根據(jù)圖4所述的數(shù)據(jù)生成系統(tǒng),進一步的,如圖7所示,所述分析單元31還包括第四分析子單元314,所述第四分析子單元314具體還包括第一處理模塊3141和/或第二處理模塊3142,其中:第四分析子單元314用于當所述數(shù)據(jù)生成系統(tǒng)通過所述第一獲取單元33獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,對所述數(shù)據(jù)表字段的驗證規(guī)則進行反向解析,獲取數(shù)據(jù)生成規(guī)則;具體的,第一處理模塊3141用于對所述數(shù)據(jù)表字段的驗證正則表達式進行反向解析,獲取所述數(shù)據(jù)表的數(shù)據(jù)生成規(guī)則;第二處理模塊3142用于編寫所述數(shù)據(jù)表字段的驗證規(guī)則的反向方法,獲取所述數(shù)據(jù)表的數(shù)據(jù)生成規(guī)則。根據(jù)圖4至圖7中任一圖所示的數(shù)據(jù)生成系統(tǒng),進一步的,如圖8所示,所述生成單元32包括第一生成子單元321、第二生成子單元322、第三生成子單元323以及第四生成子單元324中的至少一個,其中:第一生成子單元321用于通過預設程序生成符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù);第二生成子單元322用于通過字段定義的外鍵或用戶自定義的關聯(lián)外鍵,確定符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,獲取數(shù)據(jù);第三生成子單元323用于通過分類詞庫獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,從所述數(shù)據(jù)來源獲取數(shù)據(jù);第四生成子單元324用于通過網(wǎng)絡數(shù)據(jù)獲取數(shù)據(jù)來源,根據(jù)所述數(shù)據(jù)生成規(guī)則進行解析,從所述數(shù)據(jù)來源獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)。具體的,本發(fā)明實施例提供的數(shù)據(jù)生成系統(tǒng)生成的數(shù)據(jù)主要用于數(shù)據(jù)測試、模擬和演示等情況,對自動化測試和數(shù)據(jù)演示有重要作用。本發(fā)明實施例提供的數(shù)據(jù)生成系統(tǒng),通過分析單元31獲取數(shù)據(jù)生成規(guī)則,由生成單元32根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù),以錄入數(shù)據(jù)庫進行檢測。采用本發(fā)明實施例提供的數(shù)據(jù)生成系統(tǒng),能夠快速、高效的錄入完整、全面的測試數(shù)據(jù),從而提高測試數(shù)據(jù)的錄入效率,同時還能夠提高所錄入數(shù)據(jù)的質量。通過以上的實施方式的描述,所屬領域的技術人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在可讀取的存儲介質中,如計算機的軟盤,硬盤或光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述的方法。以上所述,僅為本發(fā)明的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應以所述權利要求的保護范圍為準。
權利要求
1.一種數(shù)據(jù)生成方法,其特征在于,包括: 分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則; 根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。
2.根據(jù)權利要求1所述的方法,其特征在于,所述配置信息包括所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息,或者用戶預設的配置信息; 所述分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則之前,還包括: 獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息,所述配置信息包括所述數(shù)據(jù)表中的字段信息,所述字段信息包括所述數(shù)據(jù)庫中各字段的字段名稱;或者 獲取用戶預設的配置信息,所述配置信息用于表征用戶設定的數(shù)據(jù)生成規(guī)則。
3.根據(jù)權利要求2所述的方法,其特征在于,當獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,所述分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則包括: 分析所述數(shù)據(jù)表中各字段的字段名稱,獲取組成該字段名稱的英文單詞組,所述英文單詞組中包括至少一個英文單詞; 查詢規(guī)則數(shù)據(jù)庫,獲取與所述英文單詞組中任意數(shù)量個英文單詞組合對應的數(shù)據(jù)生成規(guī)則,同時濾除無效的數(shù)據(jù)生成規(guī)則,其中,所述規(guī)則數(shù)據(jù)庫用于存儲所述數(shù)據(jù)庫中字段名稱的英文單詞與數(shù)據(jù)生成規(guī)則的對應關系,用于確定各字段可選的數(shù)據(jù)生成規(guī)則。
4.根據(jù)權利要求2所述的方法,其特征在于 ,當獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,所述分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則包括: 分析數(shù)據(jù)表中的已存數(shù)據(jù),獲取所述已存數(shù)據(jù)的數(shù)據(jù)格式,確定與該數(shù)據(jù)格式相匹配的數(shù)據(jù)生成規(guī)則。
5.根據(jù)權利要求2所述的方法,其特征在于,當獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,所述分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)包括: 對所述數(shù)據(jù)表字段的驗證規(guī)則進行反向解析,獲取數(shù)據(jù)生成規(guī)則。
6.根據(jù)權利要求5所述的方法,其特征在于,所述對所述數(shù)據(jù)表字段的驗證規(guī)則進行反向解析,獲取數(shù)據(jù)生成規(guī)則包括: 對所述數(shù)據(jù)表字段的驗證正則表達式進行反向解析,獲取當前數(shù)據(jù)庫的數(shù)據(jù)生成規(guī)則;或者 編寫所述數(shù)據(jù)表字段的驗證規(guī)則的反向方法,獲取所述數(shù)據(jù)表的數(shù)據(jù)生成規(guī)則。
7.根據(jù)權利要求1-6中任一項所述的方法,其特征在于,所述根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)包括: 通過預設程序生成符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù);或者 通過字段定義的外鍵或用戶自定義的關聯(lián)外鍵,確定符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,獲取數(shù)據(jù);或者 通過分類詞庫獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,從所述數(shù)據(jù)來源獲取數(shù)據(jù);或者 通過網(wǎng)絡數(shù)據(jù)獲取數(shù)據(jù)來源,根據(jù)所述數(shù)據(jù)生成規(guī)則進行解析,從所述數(shù)據(jù)來源獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)。
8.一種數(shù)據(jù)生成系統(tǒng),其特征在于,包括: 分析單元,用于分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則; 生成單元,用于根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。
9.根據(jù)權利要求8所述的數(shù)據(jù)生成系統(tǒng),其特征在于,所述數(shù)據(jù)生成系統(tǒng)還包括: 第一獲取單元,用于獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息,所述配置信息包括所述數(shù)據(jù)表中各字段的字段信息,所述字段信息包括所述數(shù)據(jù)庫中各字段的字段名稱;或者第二獲取單元,用于獲取用戶預設的配置信息,所述配置信息用于表征用戶設定的數(shù)據(jù)生成規(guī)則。
10.根據(jù)權利要求9所述的數(shù)據(jù)生成系統(tǒng),其特征在于,所述分析單元包括: 第一分析子單元,用于當所述數(shù)據(jù)生成系統(tǒng)通過所述第一獲取單元獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,分析所述數(shù)據(jù)表中各字段的字段名稱,獲取組成該字段名稱的英文單詞組,所述英文單詞組中包括至少一個英文單詞; 第二分析子單元,用于查詢規(guī)則數(shù)據(jù)庫,獲取與所述英文單詞組中任意數(shù)量個英文單詞組合對應的數(shù)據(jù)生成規(guī)則,同時濾除無效的數(shù)據(jù)生成規(guī)則,其中,所述規(guī)則數(shù)據(jù)庫用于存儲所述數(shù)據(jù)庫中字段名稱的英文單詞與數(shù)據(jù)生成規(guī)則的對應關系,用于確定各字段可選的數(shù)據(jù)生成規(guī)則。
11.根據(jù)權利要求9所述的數(shù)據(jù)生成系統(tǒng),其特征在于,所述分析單元還包括: 第三分析子單元,用于 當所述數(shù)據(jù)生成系統(tǒng)通過所述第一獲取單元獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,分析數(shù)據(jù)表中的已存數(shù)據(jù),獲取所述已存數(shù)據(jù)的數(shù)據(jù)格式,確定與該數(shù)據(jù)格式相匹配的數(shù)據(jù)生成規(guī)則。
12.根據(jù)權利要求9所述的數(shù)據(jù)生成系統(tǒng),其特征在于,所述分析單元還包括: 第四分析子單元,用于當所述數(shù)據(jù)生成系統(tǒng)通過所述第一獲取單元獲取所述數(shù)據(jù)庫中的數(shù)據(jù)表的配置信息時,對所述數(shù)據(jù)表字段的驗證規(guī)則進行反向解析,獲取數(shù)據(jù)生成規(guī)則。
13.根據(jù)權利要求12所述的數(shù)據(jù)生成系統(tǒng),其特征在于,所述第四分析子單元包括: 第一處理模塊,用于對所述數(shù)據(jù)表字段的驗證正則表達式進行反向解析,獲取當前數(shù)據(jù)表的數(shù)據(jù)生成規(guī)則;或者 第二處理模塊,用于編寫所述數(shù)據(jù)表字段的驗證規(guī)則的反向方法,獲取當前數(shù)據(jù)表的數(shù)據(jù)生成規(guī)則。
14.根據(jù)權利要求8-13中任一項所述的數(shù)據(jù)生成系統(tǒng),其特征在于,所述生成單元包括: 第一生成子單元,用于通過預設程序生成符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù);或者第二生成子單元,用于通過字段定義的外鍵或用戶自定義的關聯(lián)外鍵,確定符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,獲取數(shù)據(jù);或者 第三生成子單元,用于通過分類詞庫獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)來源,從所述數(shù)據(jù)來源獲取數(shù)據(jù);或者 第四生成子單元,用于通過網(wǎng)絡數(shù)據(jù)獲取數(shù)據(jù)來源,根據(jù)所述數(shù)據(jù)生成規(guī)則進行解析,從所述數(shù)據(jù)來源獲取符合所述數(shù)據(jù)生成規(guī)則的數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)生成方法及系統(tǒng),涉及數(shù)據(jù)庫領域,用于解決現(xiàn)有技術中錄入的測試數(shù)據(jù)不完整、不全面,導致錄入的數(shù)據(jù)與預期目標相差較大的問題。本發(fā)明提供的方法包括分析當前數(shù)據(jù)庫中數(shù)據(jù)的配置信息,根據(jù)所述配置信息獲取數(shù)據(jù)生成規(guī)則;根據(jù)所述數(shù)據(jù)生成規(guī)則生成數(shù)據(jù)。本發(fā)明適用于數(shù)據(jù)庫領域,用于生成數(shù)據(jù)。
文檔編號G06F17/30GK103186639SQ20111046036
公開日2013年7月3日 申請日期2011年12月31日 優(yōu)先權日2011年12月31日
發(fā)明者黃長標 申請人:騰訊科技(北京)有限公司