一種測試用例復用的方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種測試用例復用的方法及系統(tǒng),其中方法包括:步驟1:將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊;步驟2:獲取對應每個業(yè)務模塊的多個測試用例;步驟3:根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫;步驟4:接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。本發(fā)明引入了公共用例庫的概念,對于具體的測試需求,只需調用該需求涉及的模塊所對應的公共測試用例庫中的測試用例,不需要再重復設計測試用例,大大提高了測試工作的效率。
【專利說明】
一種測試用例復用的方法及系統(tǒng)
技術領域
[0001]本發(fā)明涉及一種測試用例復用的方法及系統(tǒng),屬于軟件測試領域。
【背景技術】
[0002]BOSS系統(tǒng)涉及很多關鍵模塊,每個模塊牽涉到各種品牌服務號碼和測試資源以及各種復雜的業(yè)務限制條件,如果針對每個具體測試需求或者測試任務每個測試工程師去針對業(yè)務模塊設計測試用例往往會對同一個模塊進行多次重復測試用例設計,而且每個工程師對于測試用例設計缺乏統(tǒng)一的思路和標準,設計出的測試用例也是相對發(fā)散和難于維護的,占用了大量的測試用例設計時間,降低了用例設計的效率,對于每個測試用例而言十分的分散和不可復用,因此這種用例設計方式會大大降低測試用例設計的深入性、覆蓋度以及極大降低測試用例設計的效率。
【發(fā)明內容】
[0003]本發(fā)明所要解決的技術問題是提供一種減少測試用例設計時間、提高測試用例設計效率的提升測試用例使用效率的測試用例復用的方法及系統(tǒng)。
[0004]本發(fā)明解決上述技術問題的技術方案如下:一種測試用例復用的方法,具體包括以下步驟:
[0005]步驟1:將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊;
[0006]步驟2:獲取對應每個業(yè)務模塊的多個測試用例;
[0007]步驟3:根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫;
[0008]步驟4:接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。
[0009]本發(fā)明的有益效果是:本發(fā)明引入了公共用例庫的概念,針對BOSS系統(tǒng)重要模塊進行專人測試用例設計和維護,每個人在設計和維護各自負責的模塊測試用例時都按照統(tǒng)一的標準和模式進行測試用例設計,對于需求的變動只需要分解到各個模塊中,對于各個模塊的公共測試用例庫進行維護,對于具體的測試需求任務,只需要調用該需求涉及的模塊所對應的公共測試用例庫中的測試用例,不需要再重復設計測試用例,大大提高了測試工作的效率。
[0010]在上述技術方案的基礎上,本發(fā)明還可以做如下改進。
[0011 ]進一步,所述步驟4在測試過程中,當發(fā)生測試用例被修改時,在測試完成后,將修改后的測試用例更新到公共用例庫。
[0012]進一步,每個所述業(yè)務模塊對應至少三個測試用例。
[0013]采用上述進一步方案的有益效果是,每個所述業(yè)務模塊對應至少三個測試用例,能夠保證測試的準確率,測試用例越多,得到的測試結果越精準。
[0014]進一步,每個所述測試用例包括多個測試屬性信息,所述測試屬性信息用于協(xié)助實現(xiàn)測試用例測試業(yè)務模塊,并對測試過程進行監(jiān)控和對測試結果進行驗證。
[0015]進一步,所述測試屬性信息包括前置調節(jié)信息、數(shù)據準備信息、操作步驟信息、數(shù)據驗證信息和日志監(jiān)控信息。
[0016]進一步,所述前置條件信息用于聲明啟動當前測試用例之前業(yè)務系統(tǒng)必須滿足的條件;
[0017]所述數(shù)據準備信息用于為測試用例的啟動提供數(shù)據;
[0018]所述操作步驟信息用于描述測試步驟間的連接關系;
[0019]所述數(shù)據驗證信息用于提取測試用例輸出的測試數(shù)據并進行驗證;
[0020]所述日志監(jiān)控信息用于監(jiān)控前臺日志和后臺日志,同時查看測試用例的執(zhí)行結果O
[0021]進一步,所述數(shù)據準備信息包含SQL語句執(zhí)行數(shù)據庫及SQL語句描述。
[0022]本發(fā)明解決上述技術問題的技術方案如下:一種測試用例復用的系統(tǒng),包括分類模塊、獲取模塊、搭建模塊和測試模塊;
[0023]所述分類模塊用于將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊;
[0024]所述獲取模塊用于獲取對應每個業(yè)務模塊的多個測試用例;
[0025]所述搭建模塊用于根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫;
[0026]所述測試模塊用于接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。
[0027]本發(fā)明的有益效果是:本發(fā)明引入了公共用例庫的概念,針對BOSS系統(tǒng)重要模塊進行專人測試用例設計和維護,每個人在設計和維護各自負責的模塊測試用例時都按照統(tǒng)一的標準和模式進行測試用例設計,對于需求的變動只需要分解到各個模塊中,對于各個模塊的公共測試用例庫進行維護,對于具體的測試需求任務,只需要調用該需求涉及的模塊所對應的公共測試用例庫中的測試用例,不需要再重復設計測試用例,大大提高了測試工作的效率。
[0028]在上述技術方案的基礎上,本發(fā)明還可以做如下改進。
[0029]進一步,所述測試模塊在測試過程中,當發(fā)生測試用例被修改時,在測試完成后,將修改后的測試用例更新到公共用例庫。
[0030]進一步,每個所述業(yè)務模塊對應至少三個測試用例。
【附圖說明】
[0031 ]圖1為本發(fā)明實施例1所述的一種測試用例復用的方法流程圖;
[0032]圖2為本發(fā)明實施例1所述的一種測試用例復用的系統(tǒng)結構框圖。
[0033]附圖中,各標號所代表的部件列表如下:
[0034]1、分類模塊,2、獲取模塊,3、搭建模塊,4、測試模塊。
【具體實施方式】
[0035]以下結合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0036]如圖1所示,為本發(fā)明實施例1所述的一種測試用例復用的方法,具體包括以下步驟:
[0037]步驟1:將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊;
[0038]步驟2:獲取對應每個業(yè)務模塊的多個測試用例;
[0039]步驟3:根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫;
[0040]步驟4:接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。
[0041]實施例2所述的一種測試用例復用的方法,在實施例1的基礎上,所述步驟4在測試過程中,當發(fā)生測試用例被修改時,在測試完成后,將修改后的測試用例更新到公共用例庫。
[0042]實施例3所述的一種測試用例復用的方法,在實施例1或2的基礎上,每個所述業(yè)務模塊對應至少三個測試用例。
[0043]實施例4所述的一種測試用例復用的方法,在實施例1-3任一項的基礎上,每個所述測試用例包括多個測試屬性信息,所述測試屬性信息用于協(xié)助實現(xiàn)測試用例測試業(yè)務模塊,并對測試過程進行監(jiān)控和對測試結果進行驗證。
[0044]實施例5所述的一種測試用例復用的方法,在實施例4的基礎上,所述測試屬性信息包括前置調節(jié)信息、數(shù)據準備信息、操作步驟信息、數(shù)據驗證信息和日志監(jiān)控信息。
[0045]實施例6所述的一種測試用例復用的方法,在實施例5的基礎上,所述前置條件信息用于聲明啟動當前測試用例之前業(yè)務系統(tǒng)必須滿足的條件;
[0046]所述數(shù)據準備信息用于為測試用例的啟動提供數(shù)據;
[0047]所述操作步驟信息用于描述測試步驟間的連接關系;
[0048]所述數(shù)據驗證信息用于提取測試用例輸出的測試數(shù)據并進行驗證;
[0049]所述日志監(jiān)控信息用于監(jiān)控前臺日志和后臺日志,同時查看測試用例的執(zhí)行結果O
[0050]實施例7所述的一種測試用例復用的方法,在實施例6的基礎上,所述數(shù)據準備信息包含SQL語句執(zhí)行數(shù)據庫及SQL語句描述。
[0051]所述前置條件信息,用于聲明啟動當前測試用例之前系統(tǒng)必須滿足的條件;用例的前置條件(precondit1n即前置條件信息)聲明了啟動該用例之前系統(tǒng)必須滿足的條件。通常,前置條件是指該條件已經通過其他用例的執(zhí)行進行了設置。最簡單的例子,在論壇里發(fā)貼子用例的前置條件是用戶登錄。往往層次高的用例中前后兩個沒有可選路徑的步驟,降低一級層次后,兩個步驟獨立為兩個用例,那么前一個用例就是后一個用例的前置條件。如在“病人看病”用例里,第一步驟是“掛號”,第二步驟是“去診室見醫(yī)生就診”,那么“在去診室就診”用例里,“掛號”就是其前置條件。以BOSS系統(tǒng)1121開戶沖正模塊為例,其業(yè)務實現(xiàn)類測試用例的前置條件為服務號碼資源必須已經通過1104開戶模塊開戶成功。前置條件的描述信息可以幫助測試用例執(zhí)行者對模塊業(yè)務的熟悉和了解。
[0052]所述數(shù)據準備信息,包含SQL語句執(zhí)行數(shù)據庫及SQL語句描述,用于為測試用例的啟動提供數(shù)據;數(shù)據準備信息包含兩個元素:a、SQL語句執(zhí)行數(shù)據庫(CRM庫CEN庫ACC庫以及A/B/C三個大區(qū));b、SQL語句描述(需要定位到具體字段值);
[0053]所述操作步驟信息,用于描述步驟間的連接關系;操作步驟信息的設計以簡單易讀作為基準,步驟與步驟之間采用””進行連接,預期結果描述信息需要作為頁面級驗證依據;
[0054]所述數(shù)據驗證信息,用于提取測試用例輸出的測試數(shù)據并進行驗證;數(shù)據驗證信息作為業(yè)務辦理成功后數(shù)據庫層面的驗證依據,SQL語句的查詢條件和查詢字段值以變量的形式進行描述。
[0055]例子:SELECTID_N0 FROM DCUSTMSGNG WHERE PH0NE_N0= ‘ $PH0NE_N0’ANDROffNUK = 20;
[0056]備注:$PH0NE_N0即為數(shù)據準備中SQL語句提取出來的測試數(shù)據。
[0057]所述日志監(jiān)控信息,用于監(jiān)控前臺日志和后臺日志,同時查看測試用例的執(zhí)行結果O
[0058]前臺和后臺日志都需要進行監(jiān)控,通過查看日志更好的理解代碼實現(xiàn),同時查看該測試用例在測試實現(xiàn)實驗室的執(zhí)行實際結果可以查看日志記錄的系統(tǒng)時間,保障對測試用例執(zhí)行的跟蹤和監(jiān)控。
[0059]備注:如果該需求開發(fā)人員修改的是后臺C程序,則測試工程師在執(zhí)行測試用例時需要監(jiān)控后臺服務日志;如果開發(fā)人員修改的是前臺JSP,測試工程師在執(zhí)行測試用例時應該更多的關注前臺WEB日志。
[0060]如圖2所示,為本發(fā)明實施例1所述的一種測試用例復用的系統(tǒng),包括分類模塊1、獲取模塊2、搭建模塊3和測試模塊4;
[0061]所述分類模塊I用于將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊;
[0062]所述獲取模塊2用于獲取對應每個業(yè)務模塊的多個測試用例;
[0063]所述搭建模塊3用于根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫;
[0064]所述測試模塊4用于接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。
[0065]實施例2所述的一種測試用例復用的系統(tǒng),在實施例1的基礎上,所述測試模塊4在測試過程中,當發(fā)生測試用例被修改時,在測試完成后,將修改后的測試用例更新到公共用例庫。
[0066]實施例3所述的一種測試用例復用的系統(tǒng),在實施例1或2的基礎上,每個所述業(yè)務模塊對應至少三個測試用例。
[0067]所述設計大類包括:
[0068]1.1業(yè)務實現(xiàn)類;
[0069]業(yè)務實現(xiàn)類測試用例是針對模塊對業(yè)務功能的實現(xiàn)來設計,更多的是站在終端用戶的角度進行業(yè)務的分析,常見的功能實現(xiàn)有業(yè)務開通,業(yè)務變更,業(yè)務取消等,在設計此類測試用例時我們采取的設計方法是等價類劃分和正交實驗法,更多的關注于業(yè)務的實現(xiàn),從正常流去實現(xiàn)測試用例的設計。
[0070]1.2業(yè)務限制類;
[0071]業(yè)務限制類測試用例是針對業(yè)務場景中特殊的用戶群或者特殊的業(yè)務場景進行測試用例設計,更多的是關注于系統(tǒng)對業(yè)務限制條件的滿足情況,該類測試用例的設計需要對業(yè)務場景的熟悉和實現(xiàn)代碼的梳理,運用的設計方法是判定覆蓋和路徑覆蓋。
[0072]1.3異常拋出類;
[0073]異常拋出類是從異常流的角度考慮系統(tǒng)的容錯功能,用例設計人員需要從逆向思維對測試用例進行設計,設計此類用例的方法是邊界值分析,對輸入框的各種可能輸入進行校驗,防止異常輸入導致程序異常;程序定義的變量長度和數(shù)據表中字段值長度進行驗證,防止插入表數(shù)據溢出。
[0074]h 4關聯(lián)模塊類;
[0075]關聯(lián)模塊類用例主要是針對多個模塊公用一個后臺程序,或者是業(yè)務實現(xiàn)的上下游關系進行測試用例設計,保障相關模塊業(yè)務實現(xiàn)的正確性和一致性。
[0076]通過此方案,能夠實現(xiàn)如下的功能:
[0077]1、B0SS系統(tǒng)按照業(yè)務大類、模塊進行測試用例分類;
[0078]2、直接從用例庫拷貝現(xiàn)有有效測試用例進行新需求測試覆蓋,提高測試用例復用度;
[0079]3、專人對專屬業(yè)務模塊用例庫進行用例維護,提高用例覆蓋度。
[0080]以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
【主權項】
1.一種測試用例復用的方法,其特征在于,具體包括以下步驟: 步驟1:將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊; 步驟2:獲取對應每個業(yè)務模塊的多個測試用例; 步驟3:根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫; 步驟4:接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。2.根據權利要求1所述的一種測試用例復用的方法,其特征在于,所述步驟4在測試過程中,當發(fā)生測試用例被修改時,在測試完成后,將修改后的測試用例更新到公共用例庫。3.根據權利要求1所述的一種測試用例復用的方法,其特征在于,每個所述業(yè)務模塊對應至少三個測試用例。4.根據權利要求1-3任一項所述的一種測試用例復用的方法,其特征在于,每個所述測試用例包括多個測試屬性信息,所述測試屬性信息用于協(xié)助實現(xiàn)測試用例測試業(yè)務模塊,并對測試過程進行監(jiān)控和對測試結果進行驗證。5.根據權利要求4所述的一種測試用例復用的方法,其特征在于,所述測試屬性信息包括前置調節(jié)信息、數(shù)據準備信息、操作步驟信息、數(shù)據驗證信息和日志監(jiān)控信息。6.根據權利要求5所述的一種測試用例復用的方法,其特征在于,所述前置條件信息用于聲明啟動當前測試用例之前業(yè)務系統(tǒng)必須滿足的條件; 所述數(shù)據準備信息用于為測試用例的啟動提供數(shù)據; 所述操作步驟信息用于描述測試步驟間的連接關系; 所述數(shù)據驗證信息用于提取測試用例輸出的測試數(shù)據并進行驗證; 所述日志監(jiān)控信息用于監(jiān)控前臺日志和后臺日志,同時查看測試用例的執(zhí)行結果。7.根據權利要求6所述的一種測試用例復用的方法,其特征在于,所述數(shù)據準備信息包含SQL語句執(zhí)行數(shù)據庫及SQL語句描述。8.—種測試用例復用的系統(tǒng),其特征在于,包括分類模塊、獲取模塊、搭建模塊和測試豐旲塊; 所述分類模塊用于將業(yè)務系統(tǒng)中的業(yè)務模塊按照業(yè)務類型分類,得到多個業(yè)務大類;對每個業(yè)務大類分類得到多個業(yè)務小類;每個業(yè)務小類中包括多個業(yè)務模塊; 所述獲取模塊用于獲取對應每個業(yè)務模塊的多個測試用例; 所述搭建模塊用于根據所述測試用例對應的業(yè)務模塊,業(yè)務模塊對應的業(yè)務小類、業(yè)務大類建立樹形結構的公共用例庫; 所述測試模塊用于接收測試某個測試模塊的測試請求,從公共用例庫中選取測試模塊對應的多個測試用例對測試模塊完成測試。9.根據權利要求8所述的一種測試用例復用的系統(tǒng),其特征在于,所述測試模塊在測試過程中,當發(fā)生測試用例被修改時,在測試完成后,將修改后的測試用例更新到公共用例庫。10.根據權利要求8或9所述的一種測試用例復用的系統(tǒng),其特征在于,每個所述業(yè)務模塊對應至少三個測試用例。
【文檔編號】G06F11/36GK106021093SQ201610293494
【公開日】2016年10月12日
【申請日】2016年5月5日
【發(fā)明人】張平坤
【申請人】北京思特奇信息技術股份有限公司