一種管理測試用例的方法
2023-08-06 07:47:11
專利名稱:一種管理測試用例的方法
技術領域:
本發明涉及軟體測試領域,特別一種管理測試用例的方法。
背景技術:
進行軟體產品測試前,需要編寫大量的測試用例,而一個公司開發的軟體產品會不斷的升級和改版,這樣該軟體產品的測試用例對升級後進行回歸測試非常重要。尤其在產品發布前,通常時間有限,但發布時間無法修改,如何確定測試用例的重要性和優先級別,在有限的時間獲得最大化的測試效率?現有常用的方式一般通過測試經理的經驗以及功能的重要程度來決定,但這樣做的缺點是人的經驗有時是片面的,並且忽略了以往測試發現的缺陷這一重要的歷史數據, 一般而言,出現錯誤比較多的功能遺留的缺陷也比較多,在發布前的有限時間裡,能夠將遺留缺陷降低到最小程度,無疑會提高軟體產品的質量。現今常用的測試流程是在需求分析和計劃階段,測試人員參與評審,編寫測試計劃,明確測試的範圍、測試策略、測試環境、人員和測試執行的時間點;在軟體編碼過程中,測試人員同步的開始進行測試用例的設計和編寫;當軟體開發完成後提交測試,測試人員根據編寫完成的測試用例執行測試,報告測試結果,發現的缺陷提交到缺陷資料庫;測試的執行是周期性的,每個周期測試的側重點不同,但每個周期測試的依據就是測試用例,並且隨著測試的深入,測試用例是不斷補充完善的;測試完成後,根據發現的缺陷分析軟體的質量,提交發布評審,根據評審結論,決定是繼續修改遺留的缺陷還是正式發布。測試用例的設計方法一般包括等價類劃分、邊界值、錯誤推測法,測試用例一般還可以按照用途分類功能測試和非功能測試(包括性能測試、穩定性測試、易用性測試、兼容性測試等)。只有完成上述測試後,一個軟體產品的質量才能得到保證。當前市面上包含有各種輔助的測試工具,包括功能測試工具如QTP、Winrunner,性能測試工具如Loadrunner、Robot等,還有測試管理工具如Testdirector,該工具可以進行測試計劃管理、測試用例管理、缺陷的管理。現存的測試管理工具可以有效的管理需求、測試用例、缺陷,並可以建立三者之間的對應關係,方便得到需求被測試的覆蓋率、測試用例被執行的覆蓋率,但測試用例的優先級別是需要人為手工設置的,並沒有做到自動識別。
發明內容
為此,本發明實施例提供了一種管理測試用例的方法,能自動識別測試用例優先級別。本發明提供的一種管理測試用例方法,包括建立測試用例庫;其中,測試用例庫屬性包括測試用例ID,用於唯一標示測試用例;缺陷數目,用於記錄由該測試用例測試出的缺陷數目;在執行測試用例後,如果測試用例執行失敗,自動產生一條缺陷記錄,同時增加該測試用例對應的缺陷數目;
根據預先定義的算法,以及測試用例的屬性值重新計算測試用例的優先級別。利用本發明實施例提供的技術方案,在以往軟體產品測試過程中,測試用例反覆執行,如果該測試用例發現了缺陷,則在測試用例和缺陷之間建立關聯,發現缺陷數量多的測試用例,說明其發現缺陷的能力強,在以後的測試中應重點關注,所以,只要記錄了測試用例對應的缺陷數目,根據預定義的算法,就可以自動計算出測試用例的優先級別,提高測試效率。
圖I為本發明一實施例中一種管理測試用例的方法流程圖。
具體實施例方式下面將結合附圖及實施例對本發明的技術方案進行更詳細的說明。 在本發明實施例中,建立測試用例庫;其中,測試用例庫屬性包括測試用例ID,用於唯一標示測試用例;缺陷數目,用於記錄由該測試用例測試出的缺陷數目;在執行測試用例後,如果測試用例執行失敗,自動產生一條缺陷記錄,同時增加該測試用例對應的缺陷數目;根據預先定義的算法,以及測試用例的屬性值重新計算測試用例的優先級別。在本發明另一實施例中,測試用例庫的屬性包括對應的缺陷ID,用於記錄由該測試用例測試出的缺陷ID。通過缺陷ID的數目也可以計算中缺陷數目屬性的值。本領域技術人員可以理解,此時缺陷數目屬性也可以不存在,「缺陷ID」為「缺陷數目」屬性的另一種表達方式。此時,系統還構建了一個缺陷(Bug)庫;其中,該缺陷庫的屬性包括缺陷ID,唯一標示每個缺陷,測試用例ID,用於記錄發現該缺陷的測試用例ID,該屬性記錄了缺陷與測試用例相關性,以及缺陷本身的一些屬性(例如測試環境、執行步驟、缺陷表現、缺陷隔離等,這些屬性缺陷記錄範圍,在此不一一詳述)。在本發明另一實施例中,測試用例庫的屬性還進一步包括執行狀態,用於標示該測試用例是否被執行以及執行的結果,通常包括「通過」、「失敗」、「未執行」三個狀態;優先級別,用於標示測試用例的優先級別,通常可包括「高」、「中」、「低」、「未設置」四個狀態。初始狀態下,未被執行的測試用例,其執行狀態為「未執行」,對應的缺陷ID為空,優先級別為「未設置」。圖I所示為本發明實施例所提供的一種管理測試用例的方法流程圖。如圖I所示,該方法包括步驟101 :執行測試用例;步驟102 :判斷測試用例是否執行成功;如果執行成功,執行步驟103 ;否則執行步驟 104 ;步驟103 :該測試用例的執行狀態置為「通過」;流程結束。步驟104 :該測試用例的執行狀態置為「失敗」;步驟105 自動產生一條缺陷記錄,為該缺陷分配唯一 ID,將測試用例ID填入缺陷屬性,同時將該缺陷ID填入到該測試用例的缺陷ID屬性中。在本發明一實施例中,自動將該測試用例的描述信息轉換為缺陷的執行步驟屬性,當時,測試人員可在此基礎上添加其他缺陷屬性。步驟106 :根據預先定義的算法,以及測試用例的屬性值重新刷新測試用例的優先級別。在本發明一實施例中,預定義的算法可以是根據測試用例對應的缺陷數目降序排列以對應優先級別從高到低。具體的算法描述如下假設測試用例ID用Ci代表,以BNi代表Ci 「缺陷ID」屬性中的缺陷個數;計算所有BNi > O時,平均的缺陷個數E,E = (BN1+BN2+......+BNn)/η,η為BNi大 於O的測試用例的個數;首先根據BNi由高到低將測試用例排序;將BNi >= E的測試用例的優先級設置為「高」;將O < BNi < E的測試用例的優先級設置為「中」;將BNi = O的測試用例的優先級設置為「低」。當然,本領域技術人員可以理解,還可以根據實際情況來為優先級「高」、「中」、「低」設置不同的界線。利用本發明實施例提供的技術方案,進行測試計劃時,即可根據測試用例的優先級別來規劃此次測試優先執行哪些測試用例。
權利要求
1.ー種管理測試用例的方法,其特徵在於,包括 建立測試用例庫;其中,測試用例庫屬性包括測試用例ID,用於唯一標示測試用例;缺陷數目,用於記錄由該測試用例測試出的缺陷數目; 在執行測試用例後,如果測試用例執行失敗,自動產生一條缺陷記錄,同時增加該測試用例對應的缺陷數目; 根據預先定義的算法,以及測試用例的屬性值重新計算測試用例的優先級別。
2.如權利要求I所述的方法,其特徵在幹,進ー步包括 構建了一個缺陷(Bug)庫;其中,該缺陷庫的屬性包括缺陷ID,卩隹ー標不姆個缺陷;測試用例ID,用於記錄發現該缺陷的測試用例ID,該屬性記錄了缺陷與測試用例相關性。
3.如權利要求I所述方法,其特徵在幹,進ー步包括執行狀態,用於標示該測試用例是否被執行以及執行的結果;優先級別,用於標示測試用例的優先級別。
4.如權利要求I所述的方法,其特徵在於,所述預先定義的算法為 根據測試用例對應的缺陷數目降序排列以對應優先級別從高到低。
5.如權利要求4所述的方法,其特徵在於,所述預先定義的算法為 假設測試用例ID用Ci代表,以BNi代表Ci 「缺陷數目」屬性中的缺陷個數;計算所有BNi > O時,平均的缺陷個數E,E = (BN1+BN2+......+BNn)/n,n為BNi大於O的測試用例的個數; 根據BNi由高到低將測試用例排序; 以E為界,BNi > E的測試用例設為高優先級測試用例。
全文摘要
本發明實施例提供了一種管理測試用例的方法。該管理測試用例方法,包括建立測試用例庫;其中,測試用例庫屬性包括測試用例ID,用於唯一標示測試用例;缺陷數目,用於記錄由該測試用例測試出的缺陷數目;在執行測試用例後,如果測試用例執行失敗,自動產生一條缺陷記錄,同時增加該測試用例對應的缺陷數目;根據預先定義的算法,以及測試用例的屬性值重新計算測試用例的優先級別。能自動識別測試用例優先級別。
文檔編號G06F11/36GK102662833SQ20121007598
公開日2012年9月12日 申請日期2012年3月21日 優先權日2012年3月21日
發明者王雲 申請人:天津書生軟體技術有限公司