亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)及方法

文檔序號:6511483閱讀:232來源:國知局
一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)及方法
【專利摘要】本發(fā)明涉及一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)及方法,其中,系統(tǒng)包括:本地數(shù)據(jù)庫,用于保存相關的參數(shù)表;數(shù)據(jù)篩選預處理單元,用于從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段;數(shù)據(jù)生成單元,用于利用所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中;數(shù)據(jù)輸出單元,用于根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
【專利說明】一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)及方法
【技術領域】
[0001]本發(fā)明涉及數(shù)據(jù)處理領域,特別涉及一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)及方法?!颈尘凹夹g】
[0002]測試中常需要準備相應的各種數(shù)據(jù),而這些數(shù)據(jù)在不同功能模塊或不同系統(tǒng)之中并不相同,并且往往需要手工來準備。如果系統(tǒng)功能簡單,準備的數(shù)據(jù)也相對簡單,但實際上業(yè)務的復雜性使得系統(tǒng)的處理也變得復雜,比如:個人貸款業(yè)務、系統(tǒng)抽取業(yè)務的核算要素、組成產品組件等等,要驗證這些組件是否符合要求,需要準備大量的不同情況的數(shù)據(jù),如有15個組件,每個組件有2到10種可能,那么組合起來的情況可能達2的15次方到10的15次方的數(shù)據(jù)量,在測試的時候,就需要抽取相應的數(shù)據(jù)進行測試。目前常用的做法是采用直接由程序根據(jù)相關的邏輯條件生成,這種方法解決了人工編輯效率低下、容易出錯的問題,但不能適應系統(tǒng)變化的情況,同一個功能模塊或同一個系統(tǒng),可能由于業(yè)務規(guī)則的變化,系統(tǒng)功能隨之變化,數(shù)據(jù)可能需要重新準備,原來的程序就必須修改,并且這些數(shù)據(jù)只能應用于同一個系統(tǒng),屬于一次性使用,過后就可以拋棄。如果同時有多個項目在測試的時候,數(shù)據(jù)準備的工作量就大大增加,對項目進度也有較大影響。

【發(fā)明內容】

[0003]為解決上述問題,本發(fā)明提出一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)及方法,克服了現(xiàn)有測試數(shù)據(jù)準備工作中的不足,本申請?zhí)岢龅募夹g方案是一種實現(xiàn)簡單,實施成本低,能夠有效避免準備數(shù)據(jù)困難的生成測試案例數(shù)據(jù)的系統(tǒng)及方法。
[0004]為實現(xiàn)上述目的,本發(fā)明提供了一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng),包括:
[0005]本地數(shù)據(jù)庫,用于保存相關的參數(shù)表;
[0006]數(shù)據(jù)篩選預處理單元,用于從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段;
[0007]數(shù)據(jù)生成單元,用于利用所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0008]數(shù)據(jù)輸出單元,用于根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
[0009]可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)篩選預處理單元包括使用字段模塊和篩選模塊;
[0010]所述使用字段模塊,用于從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;
[0011]所述篩選模塊,用于判斷所述使用字段第一位的值是否為I ;若是,則所述使用字段為參與數(shù)據(jù)排列組合的字段。
[0012]可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)篩選預處理單元還包括數(shù)據(jù)量模塊;
[0013]所述數(shù)據(jù)量模塊,用于根據(jù)所述篩選模塊篩選出的參與數(shù)據(jù)排列組合的字段后15位、字段ID查詢數(shù)據(jù)字典表,確定所述字段的字典項,獲取所述篩選模塊篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量。
[0014]可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)生成單元進一步用于根據(jù)所述數(shù)據(jù)篩選預處理單元中的數(shù)據(jù)量模塊獲取的數(shù)據(jù)量選擇數(shù)據(jù)生成算法。
[0015]可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)生成單元包括SQL篩選方式數(shù)據(jù)生成模塊、分組方式數(shù)據(jù)生成模塊和等價類劃分方式數(shù)據(jù)生成模塊;根據(jù)選擇,從所述SQL篩選方式數(shù)據(jù)生成模塊、所述分組方式數(shù)據(jù)生成模塊和所述等價類劃分方式數(shù)據(jù)生成模塊中任選一種模塊生成數(shù)據(jù);其中,
[0016]所述SQL篩選方式數(shù)據(jù)生成模塊,用于對所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;根據(jù)需要參與數(shù)據(jù)排列組合的字段的邏輯關系轉化成SQL語句,利用SQL語句對數(shù)據(jù)進行篩選獲取無效數(shù)據(jù),并在數(shù)據(jù)庫臨時數(shù)據(jù)表中將所述無效數(shù)據(jù)記錄狀態(tài)置為無效;
[0017]所述分組方式數(shù)據(jù)生成模塊,用于根據(jù)相對應的邏輯條件對所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段進行迭代判斷得到有效分組;對有效分組進行全排列組合的方式生成有效數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0018]所述等價類劃分方式數(shù)據(jù)生成模塊,用于從所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段的數(shù)據(jù)字典中循環(huán)取值,對取得的每個字典值記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中,直至所述字段的數(shù)據(jù)字典均取過至少一次。
[0019]為實現(xiàn)上述目的,本發(fā)明還提供了一種實現(xiàn)生成測試案例數(shù)據(jù)的方法,包括:
[0020]本地數(shù)據(jù)庫保存相關的參數(shù)表;
[0021]從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段;
[0022]利用所述篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0023]根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
[0024]可選的,在本發(fā)明一實施例中,所述篩選出需要參與數(shù)據(jù)排列組合的字段的步驟包括:
[0025]從本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;
[0026]判斷所述使用字段第一位的值是否為I ;若是,則所述使用字段為參與數(shù)據(jù)排列組合的字段。
[0027]可選的,在本發(fā)明一實施例中,所述篩選出需要參與數(shù)據(jù)排列組合的字段的步驟還包括:
[0028]根據(jù)所述篩選出的參與數(shù)據(jù)排列組合的字段后15位、字段ID查詢數(shù)據(jù)字典表,確定所述字段的字典項,獲取所述篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量。
[0029]可選的,在本發(fā)明一實施例中,所述生成所需要的數(shù)據(jù)的步驟具體包括:[0030]根據(jù)所述篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量選擇數(shù)據(jù)生成算法。
[0031 ] 可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)生成算法包括SQL篩選方式數(shù)據(jù)生成算法、分組方式數(shù)據(jù)生成算法和等價類劃分方式數(shù)據(jù)生成模塊;根據(jù)選擇,從所述SQL篩選方式數(shù)據(jù)生成算法、所述分組方式數(shù)據(jù)生成算法和所述等價類劃分方式數(shù)據(jù)生成算法中任選一種算法生成數(shù)據(jù);其中,
[0032]所述SQL篩選方式數(shù)據(jù)生成算法,對所述篩選出的需要參與數(shù)據(jù)排列組合的字段通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;根據(jù)需要參與數(shù)據(jù)排列組合的字段的邏輯關系轉化成SQL語句,利用SQL語句對數(shù)據(jù)進行篩選獲取無效數(shù)據(jù),并在數(shù)據(jù)庫臨時數(shù)據(jù)表中將所述無效數(shù)據(jù)記錄狀態(tài)置為無效;
[0033]所述分組方式數(shù)據(jù)生成算法,根據(jù)相對應的邏輯條件對所述篩選出的需要參與數(shù)據(jù)排列組合的字段進行迭代判斷得到有效分組;對有效分組進行全排列組合的方式生成有效數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0034]所述等價類劃分方式數(shù)據(jù)生成算法,用于從所述篩選出的需要參與數(shù)據(jù)排列組合的字段的數(shù)據(jù)字典中循環(huán)取值,對取得的每個字典值記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中,直至所述字段的數(shù)據(jù)字典均取過至少一次。
[0035]上述技術方案具有如下有益效果:
[0036]I)數(shù)據(jù)文件涉及的數(shù)據(jù)字段,其數(shù)據(jù)結構、數(shù)據(jù)字典采用共享方式,同一個字段在多個文件中出現(xiàn)的機率是很大的,因而可以實現(xiàn)一次配置后,多次使用,避免重復做繁瑣的數(shù)據(jù)準備工作,提高了效率。
[0037]2)對已生成的數(shù)據(jù),直接生成為外部文件,方便保存和使用,避免數(shù)據(jù)庫保留太多數(shù)據(jù),而導致效率降低和維護成本增加。
【專利附圖】

【附圖說明】
[0038]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0039]圖1為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)框圖;
[0040]圖2為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)中數(shù)據(jù)篩選預處理單元框圖之一;
[0041]圖3為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)中數(shù)據(jù)篩選預處理單元框圖之二 ;
[0042]圖4為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)中數(shù)據(jù)生成單元框圖;
[0043]圖5為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的方法流程圖;
[0044]圖6為實施例的實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)總體結構示意圖;
[0045]圖7為實施例中數(shù)據(jù)文件字段關系實例示意圖;
[0046]圖8為實施例中SQL篩選方式生成數(shù)據(jù)文實例示意圖;
[0047]圖9為實施例中分組方式生成數(shù)據(jù)文實例示意圖;[0048]圖10為實施例中等價類劃分方式生成數(shù)據(jù)文實例示意圖;
[0049]圖11為實施例中實現(xiàn)生成測試案例數(shù)據(jù)的方法的流程示意圖。
【具體實施方式】
[0050]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述。顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0051]如圖1所示,為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)框圖。包括:
[0052]本地數(shù)據(jù)庫101,用于保存相關的參數(shù)表;
[0053]數(shù)據(jù)篩選預處理單元102,用于從所述本地數(shù)據(jù)庫101讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段;
[0054]數(shù)據(jù)生成單元103,用于利用所述數(shù)據(jù)篩選預處理單元102篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0055]數(shù)據(jù)輸出單元104,用于根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
[0056]如圖2所示,為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)中數(shù)據(jù)篩選預處理單元框圖之一。所述數(shù)據(jù)篩選預處理單元102包括使用字段模塊1021和篩選模塊1022 ;
[0057]所述使用字段模塊1021,用于從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;
[0058]所述篩選模塊1022,用于判斷所述使用字段第一位的值是否為I ;若是,則所述使用字段為參與數(shù)據(jù)排列組合的字段。
[0059]如圖3所示,為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)中數(shù)據(jù)篩選預處理單元框圖之二。在圖2的基礎上,所述數(shù)據(jù)篩選預處理單元102還包括數(shù)據(jù)量模塊1023 ;
[0060]所述數(shù)據(jù)量模塊1023,用于根據(jù)所述篩選模塊篩選出的參與數(shù)據(jù)排列組合的字段后15位、字段ID查詢數(shù)據(jù)字典表,確定所述字段的字典項,獲取所述篩選模塊篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量。
[0061]可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)生成單元103進一步用于根據(jù)所述數(shù)據(jù)篩選預處理單元102中的數(shù)據(jù)量模塊獲取的數(shù)據(jù)量選擇數(shù)據(jù)生成算法。
[0062]如圖4所示,所述數(shù)據(jù)生成單元103包括SQL篩選方式數(shù)據(jù)生成模塊1031、分組方式數(shù)據(jù)生成模塊1032和等價類劃分方式數(shù)據(jù)生成模塊1033 ;根據(jù)選擇,從所述SQL篩選方式數(shù)據(jù)生成模塊、所述分組方式數(shù)據(jù)生成模塊和所述等價類劃分方式數(shù)據(jù)生成模塊中任選一種模塊生成數(shù)據(jù);其中,
[0063]所述SQL篩選方式數(shù)據(jù)生成模塊1031,用于對所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;根據(jù)需要參與數(shù)據(jù)排列組合的字段的邏輯關系轉化成SQL語句,利用SQL語句對數(shù)據(jù)進行篩選獲取無效數(shù)據(jù),并在數(shù)據(jù)庫臨時數(shù)據(jù)表中將所述無效數(shù)據(jù)記錄狀態(tài)置為無效;
[0064]所述分組方式數(shù)據(jù)生成模塊1032,用于根據(jù)相對應的邏輯條件對所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段進行迭代判斷得到有效分組;對有效分組進行全排列組合的方式生成有效數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0065]所述等價類劃分方式數(shù)據(jù)生成模塊1033,用于從所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段的數(shù)據(jù)字典中循環(huán)取值,對取得的每個字典值記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中,直至所述字段的數(shù)據(jù)字典均取過至少一次。
[0066]如圖5所示,為本發(fā)明提出的一種實現(xiàn)生成測試案例數(shù)據(jù)的方法流程圖。包括:
[0067]步驟501):本地數(shù)據(jù)庫保存相關的參數(shù)表;
[0068]步驟502):從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段;
[0069]步驟503):利用所述篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0070]步驟504):根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
[0071]可選的,在本發(fā)明一實施例中,所述步驟502包括:
[0072]步驟5021):從本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;
[0073]步驟5022):判斷所述使用字段第一位的值是否為I ;若是,則所述使用字段為參與數(shù)據(jù)排列組合的字段。
[0074]可選的,在本發(fā)明一實施例中,所述步驟502還包括:
[0075]步驟5023):根據(jù)所述篩選出的參與數(shù)據(jù)排列組合的字段后15位、字段ID查詢數(shù)據(jù)字典表,確定所述字段的字典項,獲取所述篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量。
[0076]可選的,在本發(fā)明一實施例中,所述步驟503具體包括:
[0077]根據(jù)所述篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量選擇數(shù)據(jù)生成算法。
[0078]可選的,在本發(fā)明一實施例中,所述數(shù)據(jù)生成算法包括SQL篩選方式數(shù)據(jù)生成算法、分組方式數(shù)據(jù)生成算法和等價類劃分方式數(shù)據(jù)生成模塊;根據(jù)選擇,從所述SQL篩選方式數(shù)據(jù)生成算法、所述分組方式數(shù)據(jù)生成算法和所述等價類劃分方式數(shù)據(jù)生成算法中任選一種算法生成數(shù)據(jù);其中,
[0079]所述SQL篩選方式數(shù)據(jù)生成算法,對所述篩選出的需要參與數(shù)據(jù)排列組合的字段通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;根據(jù)需要參與數(shù)據(jù)排列組合的字段的邏輯關系轉化成SQL語句,利用SQL語句對數(shù)據(jù)進行篩選獲取無效數(shù)據(jù),并在數(shù)據(jù)庫臨時數(shù)據(jù)表中將所述無效數(shù)據(jù)記錄狀態(tài)置為無效;
[0080]所述分組方式數(shù)據(jù)生成算法,根據(jù)相對應的邏輯條件對所述篩選出的需要參與數(shù)據(jù)排列組合的字段進行迭代判斷得到有效分組;對有效分組進行全排列組合的方式生成有效數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;
[0081]所述等價類劃分方式數(shù)據(jù)生成算法,用于從所述篩選出的需要參與數(shù)據(jù)排列組合的字段的數(shù)據(jù)字典中循環(huán)取值,對取得的每個字典值記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中,直至所述字段的數(shù)據(jù)字典均取過至少一次。
[0082]實施例:
[0083]下面將對照附圖,對本發(fā)明的技術方案進行詳細說明。
[0084]如圖6所示,為實施例的實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng)總體結構示意圖。該系統(tǒng)包括:本地數(shù)據(jù)庫1、數(shù)據(jù)篩選預處理單元2、SQL篩選方式數(shù)據(jù)生成模塊3、分組方式數(shù)據(jù)生成模塊4、等價類劃分方式數(shù)據(jù)生成模塊5和數(shù)據(jù)輸出單元6。其中,
[0085]本地數(shù)據(jù)庫I主要用于保存相關參數(shù)表;
[0086]數(shù)據(jù)篩選預處理單元2主要用于對設置的參數(shù)進行相關的檢查,包括計算組合的數(shù)據(jù)量,篩選出需要參與組合的字段等預處理功能,以便精簡數(shù)據(jù),為后續(xù)不同算法的分析處理,減少循環(huán)和判斷處理,提高數(shù)據(jù)生成的效率;
[0087]SQL篩選方式數(shù)據(jù)生成模塊3主要通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時表中,然后字段的邏輯關系轉化成的SQL語句對數(shù)據(jù)進行篩選,最后得出所需的數(shù)據(jù)記錄在數(shù)據(jù)庫臨時數(shù)據(jù)表;
[0088]分組方式數(shù)據(jù)生成模塊4主要通過分組排列方式生成所需要的數(shù)據(jù),將所需的數(shù)據(jù)記錄在數(shù)據(jù)庫臨時數(shù)據(jù)表;
[0089]等價劃分方式數(shù)據(jù)生成裝置5是通過等價類劃分方法的原理生成數(shù)據(jù),將所需的數(shù)據(jù)記錄在數(shù)據(jù)庫臨時數(shù)據(jù)表;
[0090]數(shù)據(jù)輸出單元6是一個提供界面,由用戶選擇數(shù)據(jù)輸出方式輸出數(shù)據(jù);
[0091]本地數(shù)據(jù)庫I存儲的相關參數(shù)則可通過數(shù)據(jù)文件管理模塊7、數(shù)據(jù)結構管理模塊
8、數(shù)據(jù)字典管理模塊9和數(shù)據(jù)邏輯關系管理模塊10進行設置。其中,
[0092]數(shù)據(jù)文件管理模塊7用于數(shù)據(jù)生成時,讀定義數(shù)據(jù)文件名;
[0093]數(shù)據(jù)結構管理模塊8是用于定義待生成文件的結構組成;
[0094]數(shù)據(jù)字典管理模塊9用于定義數(shù)據(jù)結構中每個字段的取值字典;
[0095]數(shù)據(jù)邏輯關系管理模塊10用于定義數(shù)據(jù)結構文件中各字段間的邏輯關系。
[0096]通過數(shù)據(jù)文件管理模塊7定義了文件名后,再通過數(shù)據(jù)結構管理模塊8定義文件結構,再由數(shù)據(jù)字典管理模塊9定義結構的字典,然后通過數(shù)據(jù)邏輯關系管理模塊10定義字段間的邏輯關系。以上要素定義完成后,通過數(shù)據(jù)篩選預處理單元2對選擇的文件進行預處理,通過SQL篩選方式數(shù)據(jù)生成模塊3、分組方式數(shù)據(jù)生成模塊4、等價類劃分方式數(shù)據(jù)生成模塊5任一種數(shù)據(jù)組成方法生成數(shù)據(jù),然后通過數(shù)據(jù)輸出單元6輸出數(shù)據(jù),完成數(shù)據(jù)的生成。
[0097]下面是各裝置的詳細說明:
[0098]本地數(shù)據(jù)庫1,用于保存相關的參數(shù)表,包括文件名稱表、數(shù)據(jù)結構表、數(shù)據(jù)字典表、數(shù)據(jù)關聯(lián)表、邏輯關系表及臨時數(shù)據(jù)表,各表作用如下:
[0099]1、文件名稱表(DATAFILE)定義需要生成的數(shù)據(jù)文件的名稱,以TXT、EXCEL等文件形式來保存數(shù)據(jù),方便直接導入到腳本中運行,或直接使用。表結構見表I,此表由數(shù)據(jù)文件管理模塊6進行設置管理。
[0100]表I文件名稱表(DATAFILE)
[0101]
【權利要求】
1.一種實現(xiàn)生成測試案例數(shù)據(jù)的系統(tǒng),其特征在于,包括: 本地數(shù)據(jù)庫,用于保存相關的參數(shù)表; 數(shù)據(jù)篩選預處理單元,用于從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段; 數(shù)據(jù)生成單元,用于利用所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中; 數(shù)據(jù)輸出單元,用于根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
2.如權利要求1所述的系統(tǒng),其特征在于,所述數(shù)據(jù)篩選預處理單元包括使用字段模塊和篩選模塊; 所述使用字段模塊,用于從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段; 所述篩選模塊,用于判斷所述使用字段第一位的值是否為I ;若是,則所述使用字段為參與數(shù)據(jù)排列組合的字段。
3.如權利要求2 所述的系統(tǒng),其特征在于,所述數(shù)據(jù)篩選預處理單元還包括數(shù)據(jù)量模塊; 所述數(shù)據(jù)量模塊,用于根據(jù)所述篩選模塊篩選出的參與數(shù)據(jù)排列組合的字段后15位、字段ID查詢數(shù)據(jù)字典表,確定所述字段的字典項,獲取所述篩選模塊篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量。
4.如權利要求3所述的系統(tǒng),其特征在于,所述數(shù)據(jù)生成單元進一步用于根據(jù)所述數(shù)據(jù)篩選預處理單元中的數(shù)據(jù)量模塊獲取的數(shù)據(jù)量選擇數(shù)據(jù)生成算法。
5.如權利要求4所述的系統(tǒng),其特征在于,所述數(shù)據(jù)生成單元包括SQL篩選方式數(shù)據(jù)生成模塊、分組方式數(shù)據(jù)生成模塊和等價類劃分方式數(shù)據(jù)生成模塊;根據(jù)選擇,從所述SQL篩選方式數(shù)據(jù)生成模塊、所述分組方式數(shù)據(jù)生成模塊和所述等價類劃分方式數(shù)據(jù)生成模塊中任選一種模塊生成數(shù)據(jù);其中, 所述SQL篩選方式數(shù)據(jù)生成模塊,用于對所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;根據(jù)需要參與數(shù)據(jù)排列組合的字段的邏輯關系轉化成SQL語句,利用SQL語句對數(shù)據(jù)進行篩選獲取無效數(shù)據(jù),并在數(shù)據(jù)庫臨時數(shù)據(jù)表中將所述無效數(shù)據(jù)記錄狀態(tài)置為無效;所述分組方式數(shù)據(jù)生成模塊,用于根據(jù)相對應的邏輯條件對所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段進行迭代判斷得到有效分組;對有效分組進行全排列組合的方式生成有效數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中; 所述等價類劃分方式數(shù)據(jù)生成模塊,用于從所述數(shù)據(jù)篩選預處理單元篩選出的需要參與數(shù)據(jù)排列組合的字段的數(shù)據(jù)字典中循環(huán)取值,對取得的每個字典值記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中,直至所述字段的數(shù)據(jù)字典均取過至少一次。
6.一種實現(xiàn)生成測試案例數(shù)據(jù)的方法,其特征在于,包括: 本地數(shù)據(jù)庫保存相關的參數(shù)表; 從所述本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段;并對所述使用字段的字典的參數(shù)進行合法性檢查,篩選出需要參與數(shù)據(jù)排列組合的字段; 利用所述篩選出的需要參與數(shù)據(jù)排列組合的字段生成測試案例所需要的數(shù)據(jù),并將生成的數(shù)據(jù)記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中; 根據(jù)用戶需求,將所述數(shù)據(jù)庫臨時數(shù)據(jù)表中記錄的數(shù)據(jù)輸出。
7.如權利要求6所述的方法,其特征在于,所述篩選出需要參與數(shù)據(jù)排列組合的字段的步驟包括: 從本地數(shù)據(jù)庫讀取文件名稱表,根據(jù)所述文件名稱表讀取數(shù)據(jù)關聯(lián)表得到使用字段; 判斷所述使用字段第一位的值是否為I ;若是,則所述使用字段為參與數(shù)據(jù)排列組合的字段。
8.如權利要求7所述的方法,其特征在于,所述篩選出需要參與數(shù)據(jù)排列組合的字段的步驟還包括: 根據(jù)所述篩選出的參與數(shù)據(jù)排列組合的字段后15位、字段ID查詢數(shù)據(jù)字典表,確定所述字段的字典項,獲取所述篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量。
9.如權利要求8所述的方法,其特征在于,所述生成所需要的數(shù)據(jù)的步驟具體包括: 根據(jù)所述篩選出的參與數(shù)據(jù)排列組合的字段全排列組合達到的數(shù)據(jù)量選擇數(shù)據(jù)生成算法。
10.如權利要求9所述的方法,其特征在于,所述數(shù)據(jù)生成算法包括SQL篩選方式數(shù)據(jù)生成算法、分組方式數(shù)據(jù)生成算法和等價類劃分方式數(shù)據(jù)生成模塊;根據(jù)選擇,從所述SQL篩選方式數(shù)據(jù)生成算法、所述分組方式數(shù)據(jù)生成算法和所述等價類劃分方式數(shù)據(jù)生成算法中任選一種算法生成數(shù)據(jù);其中, 所述SQL篩選方式數(shù)據(jù)生成算法,對所述篩選出的需要參與數(shù)據(jù)排列組合的字段通過全排列組合方式生成全部可能組合的數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中;根據(jù)需要參與數(shù)據(jù)排列組合的字段的邏輯關系轉化成SQL語句,利用SQL語句對數(shù)據(jù)進行篩選獲取無效數(shù)據(jù),并在數(shù)據(jù)庫臨時數(shù)據(jù)表中將所述無效數(shù)據(jù)記錄狀態(tài)置為無效; 所述分組方式數(shù)據(jù)生成算法,根據(jù)相對應的邏輯條件對所述篩選出的需要參與數(shù)據(jù)排列組合的字段進行迭代判斷得到有效分組;對有效分組進行全排列組合的方式生成有效數(shù)據(jù),保存到數(shù)據(jù)庫臨時數(shù)據(jù)表中; 所述等價類劃分方式數(shù)據(jù)生成算法,用于從所述篩選出的需要參與數(shù)據(jù)排列組合的字段的數(shù)據(jù)字典中循環(huán)取值,對取得的每個字典值記錄到數(shù)據(jù)庫臨時數(shù)據(jù)表中,直至所述字段的數(shù)據(jù)字典均取過至少一次。
【文檔編號】G06F17/30GK103473325SQ201310418239
【公開日】2013年12月25日 申請日期:2013年9月13日 優(yōu)先權日:2013年9月13日
【發(fā)明者】劉春玲, 胡軍全, 楊伯恩, 呂海文, 鄒大衛(wèi), 舒廣 申請人:中國工商銀行股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1