中文字幕无码日韩视频无码三区

一種單元測試方法及裝置的制造方法

文(wen)檔序號:10552827閱讀:413來源:國知(zhi)局
一種單元測試方法及裝置的制造方法
【專利摘要】本發明實施例公開了一種單元測試方法,包括獲取整體項目中各子項目開發計劃表,按照預定模型生成歸一化項目表格;根據上述歸一化項目表格,識別出符合預定標準的單元;根據預定規則生成該單元測試環境,完成測試。本發明實施例可以提高單元測試效率,降低單元測試的成本。
【專利說明】
一種單元測試方法及裝置
技術領域
[0001]本發明涉及軟件測試技術,尤其提出了一種單元測試方法及裝置。
【背景技術】
[0002]單元測試是大型程序開發中必經的環節,是對整體程序的各個組成單元進行測試,用以檢測各單元是否正確實現了其預定的功能。目前單元測試主要是根據各單元要實現的功能,為被測單元編寫測試用例并搭建測試環境的方法實現。這種方法最大的問題在于,測試代碼工作量大,每一個單元都要單獨編寫大量的測試用例并搭建測試環境,耗費大量的人力及時間。尤其對于大型軟件,測試代碼的工作量甚至超過功能代碼的代碼量,并且搭建測試環境的時間占到整個開發時間的40%甚至更多。

【發明內容】

[0003]為了克服現有技術的不足,本發明為要解決的技術問題,提供一種單元測試方法及裝置,有效的提高了單元測試的綜合效率,降低了編寫測試代碼的工作量,節省了單元測試的時間。
[0004]為解決上述問題,本發明所采用的技術方案如下:
[0005]—種單元測試方法,包括以下步驟:
[0006]獲取整體項目中各子項目信息表;
[0007]根據所述整體項目中各子項目信息表生成歸一化項目信息表;
[0008]根據所述歸一化項目信息表,識別出符合預定標準的單元;
[0009]按預定規則生成所述符合預定標準的單元的測試環境;
[0010]調用所述測試環境,完成所述符合預定標準的單元的單元測試。
[0011 ]所述歸一化項目信息表包括各子項目的歸一化項目信息,其中所述各子項目的歸一化項目信息包括,項目進度階段信息、邏輯上游單元信息、邏輯下游單元信息、項目進度階段中各階段的時間點信息。
[0012]所述項目進度階段包括新建階段、需求階段、排期階段、開發階段、測試階段及已上線階段。
[0013]所述歸一化項目信息表支持迭代式開發或瀑布式開發或迭代式與瀑布式混合開發的子項目信息表。
[0014]所述符合預定標準的單元是指在歸一化項目信息表中,所述單元的邏輯功能上的上游單元及邏輯功能上的下游單元在所述單元預期的測試階段開始時間之前已完成各自單元的單元測試。
[0015]所述按預定規則生成測試環境,包括執行以下步驟:
[0016]根據所述符合預定標準的單元的歸一化項目信息,讀取其邏輯功能上的上游單元及下游單元代碼;
[0017]根據所述讀取的上游單元及下游單元代碼,生成各自的測試模塊連接代碼;
[0018]調用所述上游單元及其激勵測試模塊代碼,生成單元激勵模塊;
[0019]調用所述下游單元及其結果檢測模塊代碼,生成單元結果檢測模塊;
[0020]根據所述測試模塊連接代碼、單元激勵模塊、單元結果檢測模塊生成單元測試環境。
[0021]—種單元測試裝置,其特征在于,包括:
[0022]檢索單元,用于獲取整體項目中各子項目開發計劃表;
[0023]項目表格生成單元,用于生成上述歸一化項目表格;
[0024]檢測單元,用于識別出符合預定標準的單元;
[0025]測試環境生成單元,用于生成上述單元測試環境;
[0026]測試執行單元,用于調用所述測試環境,完成單元測試。
[0027]所述測試環境生成單元還包括,測試代碼生成單元,用于根據上述選定的上游及下游單元生成接口代碼。
[0028]相比現有技術,本發明的有益效果在于:
[0029]1、通過借用符合預定標準的單元的上游及下游單元的測試環境,有效降低了單元測試環境搭建的工作量。
[0030]2、通過利用歸一化項目表格,同時支持瀑布式軟件開發和迭代式軟件開發模式,提高了符合預定標準的單元識別率,有效減少了單元測試環境搭建的工作量。
[0031]3、通過測試代碼復用,有效提高了測試效率。
[0032]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其他目的、特征和優點能夠更明顯易懂,以下特舉較佳實施例,并配合附圖,詳細說明如下。
【附圖說明】
[0033]圖1是一般單元測試環境的結構圖。
[0034]圖2是利用上、下游單元搭建測試環境原理圖。
[0035]圖3是本發明實施例單元測試方法流程圖。
[0036]圖4是本發明實施例瀑布式開發與迭代式開發對齊原理如圖。
[0037]圖5是本發明實施例生成單元測試環境的流程圖。
[0038]圖6是單元測試環境結構圖。
[0039]圖7是本發明實施例提供的一種單元測試裝置的結構示意圖。
【具體實施方式】
[0040]下面結合附圖詳細描述本發明的【具體實施方式】。
[0041]—般大型軟件開發項目中,整體軟件會根據功能劃分成若干個功能模塊,每個功能模塊又會根據要完成的功能劃分成若干個單元模塊。通常所述的單元測試就是針對這些單元模塊的測試。整體軟件會由多個項目團隊共同開發完成,不同單元之間開發進度不一致,有的先完成有的后完成。所以存在某些軟件單元,這些單元在其代碼開發完畢后,進行單元測試前,其邏輯功能上的上、下游單元已經開發完畢并完成了各自的單元測試。此時可以利用該單元邏輯上的上、下游單元及其測試環境搭建出適合該單元的單元測試環境,從而減少單元測試環境搭建的工作量,提高單元測試效率。
[0042]圖1是一般單元測試環境的結構圖,其中激勵模塊根據測試用例產生激勵數據發送給被測單元;結果檢測模塊檢測被測單元輸出的結果的正確與否。激勵單元模擬該被測單元的所有可能的輸入數據情況;檢測模塊檢測在激勵模塊各種輸入數據情況下,被測單元的輸出數據是否符合期望中的輸出數據,從而判斷被測模塊是否有設計錯誤。
[0043]圖2是利用上、下游單元搭建測試環境原理圖,通過借用上下游單元的測試環境完成單元測試環境的搭建。
[0044]圖3是本發明實施例單元測試方法流程圖。該流程起始于步驟301。然后在步驟302獲取整體項目中各子項目信息表。子項目信息表和項目的開發方式相關,一般項目的開發方式分為瀑布式軟件開發方式和迭代式軟件開發方式兩種。不同項目根據各自需求選擇合適自己的開發方式進行工作,其中瀑布式開發方式在時間進度節點上較迭代式更為清晰,所以一般選用瀑布式開發方式為基準,將迭代式開發方式通過一定的技術手段轉化為具有和瀑布式開發方式一樣的時間進度節點,從而統一整體項目的開發計劃,實現歸一化表格記錄項目狀態。
[0045]在步驟303生成歸一化項目信息表,在此對歸一化項目信息表做簡要的說明,生成歸一化表格是因為不同的開發方式,項目開發模式不同,時間規劃方式也不同,在不同的開發模式下,很難統一明確功能需求及各功能模塊的開發進度,所以需要通過統一的歸一化表格實現不同模式開發下的項目功能及進度記錄。下面具體舉例說明如何將瀑布式開發模式和迭代式開發模式的開發進度通過歸一化表格統一,此處舉例只是介紹了實現歸一化表格的一種實現方法,并不對其他方法形成限制。此處介紹一種把迭代式項目的階段向瀑布式項目階段靠齊的方法,瀑布式項目的階段主要有:新建階段、需求階段、排期階段、開發階段、測試階段、已上線階段;為了對齊,迭代式開發的需求也設置了新建階段、需求階段、排期階段、開發階段、測試階段、已上線階段這幾個階段,它們的對齊關系如圖4所示。通過上述將迭代式開發分段的方法,將迭代式開發與瀑布式開發在項目階段上對齊。歸一化表格根據對齊的各子項目階段,記錄下各單元的狀態、進度、和周邊單元的邏輯關系及時間安排計劃,生成所述表格。
[0046]在步驟304識別出符合預定標準的單元。所述預定標準是指滿足預先設定的構建測試環境的標準,即所述符合預定標準的單元是指在歸一化項目信息表中,該單元的邏輯功能上的上游單元及邏輯功能上的下游單元完成各自獨立的單元測試時間在該單元進入測試階段的時間節點之前。
[0047]在步驟305根據上述識別出的單元,生成該單元測試環境,完成測試。
[0048]流程結束于步驟306。
[0049]圖5示出步驟305中根據預定規則生成單元測試環境的流程圖。該流程起始于步驟501。然后在步驟502根據所述符合預定標準的單元的歸一化項目信息,讀取符合預定標準的單元的邏輯功能上的上游單元及下游單元代碼。在步驟503,掃描讀取的上游及下游單元代碼,讀取模塊輸入輸出接口定義部分內容,生成測試模塊連接代碼。在步驟504調用所述上游單元及其激勵測試模塊代碼,生成被測單元的單元激勵模塊。在步驟505調用所述下游單元及其結果檢測模塊代碼,生成單元結果檢測模塊;在步驟506根據所述測試模塊連接模塊、單元激勵模塊、單元結果檢測模塊生成單元測試環境。步驟507結束。
[0050]圖6是圖5所述單元測試環境結構圖,被測單元的上游單元及其激勵測試模塊代碼,生成被測單元的單元激勵模塊。被測單元的下游單元及其結果檢測模塊,生成單元結果檢測模塊。測試模塊連接模塊將被測單元及單元激勵模塊和結果檢測模塊連接起來,生成測試環境。
[0051]圖7是本發明實施例提供的一種單元測試裝置的結構示意圖。包括檢索單元701,項目表格生成單元702,檢測單元703,測試環境生成單元704,測試執行單元705。
[0052]其中,檢索單元,用于獲取整體項目中各子項目開發計劃表;項目表格生成單元,用于生成上述歸一化項目表格;檢測單元,用于識別出符合預定標準的單元;測試環境生成單元,用于生成上述單元測試環境;測試執行單元,用于調用所述測試環境,完成單元測試。
[0053]所述測試環境生成單元還包括,測試代碼生成單元,用于根據上述選定的上游及下游單元生成接口代碼。
[0054]進一步的,上述接口代碼可以由測試代碼生成單元自動編寫。具體的,可以通過腳本程序掃描上游及下游模塊,讀取其關于輸入輸出定義,并通過腳本自動生成具有輸入、輸出定義的包圍模塊。
[0055]更進一步,還可以通過測試環境生成單元實現測試環境的自動生成。對于選取上述待測試單元的上游及下游單元,根據上述生成的接口代碼,并調用已有的測試代碼,生成單元測試環境。
[0056]雖然以上描述了本發明的【具體實施方式】,但是本技術領域內的技術人員應當理解,這些僅是舉例說明,可以對這些實施方式做出多種變更或修改,而不背離本發明的原理和實質。本發明的范圍僅由所述權利要求書限定。
【主權項】
1.一種單元測試方法,其特征在于,包括以下步驟: 獲取整體項目中各子項目信息表; 根據所述整體項目中各子項目信息表生成歸一化項目信息表; 根據所述歸一化項目信息表,識別出符合預定標準的單元; 按預定規則生成所述符合預定標準的單元的測試環境; 調用所述測試環境,完成所述符合預定標準的單元的單元測試。2.如權利要I所述單元測試方法,其特征在于:所述歸一化項目信息表包括各子項目的歸一化項目信息,其中所述各子項目的歸一化項目信息包括,項目進度階段信息、邏輯上游單元信息、邏輯下游單元信息、項目進度階段中各階段的時間點信息。3.如權利要2所述單元測試方法,其特征在于:所述項目進度階段包括新建階段、需求階段、排期階段、開發階段、測試階段及已上線階段。4.如權利要I所述單元測試方法,其特征在于:所述歸一化項目信息表支持迭代式開發或瀑布式開發或迭代式與瀑布式混合開發的子項目信息表。5.如權利要I所述單元測試方法,其特征在于:所述符合預定標準的單元是指在歸一化項目信息表中,所述單元的邏輯功能上的上游及下游單元完成各自單元測試的時間早于所述單元的單元測試時間點。6.如權利要I所述單元測試方法,其特征在于,所述按預定規則生成測試環境,包括執行以下步驟: 根據所述符合預定標準的單元的歸一化項目信息,讀取符合預定標準的單元的邏輯功能上的上游單元及下游單元代碼; 根據所述讀取的上游單元及下游單元代碼,生成測試模塊連接代碼; 調用所述上游單元及其激勵測試模塊代碼,生成單元激勵模塊; 調用所述下游單元及其結果檢測模塊代碼,生成單元結果檢測模塊; 根據所述測試模塊連接代碼、單元激勵模塊、單元結果檢測模塊生成單元測試環境。7.一種單元測試裝置,其特征在于,包括: 檢索單元,用于獲取整體項目中各子項目開發計劃表; 項目表格生成單元,用于生成上述歸一化項目表格; 檢測單元,用于識別出符合預定標準的單元; 測試環境生成單元,用于生成上述單元測試環境; 測試執行單元,用于調用所述測試環境,完成單元測試。8.如權利要求7所述單元測試裝置,其特征在于:所述測試環境生成單元還包括,測試代碼生成單元,用于根據上述選定的上游及下游單元生成接口代碼。
【文檔編號】G06F11/36GK105912464SQ201610207623
【公開日】2016年8月31日
【申請日】2016年4月1日
【發明人】蔡安原, 郭建, 伍智亮, 鹿海波
【申請人】廣州唯品會網絡技術有限公司
網友詢問(wen)留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1