軟件測試用例的設計(2)
發表于:2015-11-06來源:csdn作者:王靜蘭點擊數:
標簽:
測試用例已被確定用來執行測試目標中所有的產品需求行為,包括(視情況而定): 功能 、數據確認 、業務規則實施 、測試目標工作流程或控制 、數據流
測試用例已被確定用來執行測試目標中所有的產品需求行為,包括(視情況而定): 功能 、數據確認 、業務規則實施 、測試目標工作流程或控制 、數據流 、對象狀態 、
性能(包括工作量、配置和強度) 、
安全性/可訪問性 、
兼容性。每個測試用例都說明或者/代表一個唯一的輸入集或事件順序,它能夠產生唯一的測試目標行為,復審那些產生相同行為的測試用例并判定它們是否等同,即它們是否都執行測試目標中的路徑。
每個測試用例(或每組相關的測試用例)確定初始的測試目標狀態和測試數據狀態。測試用例名稱和/或 ID 與測試工件命名約定一致。
2 測試用例的設計方法概述
根據測試的方法分為黑盒測試和
白盒測試,相應的測試用例的設計方法也可以分為針對黑盒測試的用例設計和針對
白盒測試的用例設計。
至今提出的測試用例設計方法有許多,下面簡要的介紹一些比較重要的、常用的方法。
2.1 白盒測試的測試用例設計方法
2.1.1 邏輯覆蓋
邏輯覆蓋包括:語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋、路徑覆蓋,各自的定義簡略描述如下:
語句覆蓋就是設計若干個測試用例,運行被測程序,使得每一可執行語句至少執行一次。
判定覆蓋就是設計若干個測試用例,運行被測程序,使得程序中每個判斷的取真分支和取假分支至少經歷一次。
條件覆蓋就是設計若干個測試用例,運行被測程序,使得程序中每個判斷的每個條件的可能取值至少執行一次。
判定-條件覆蓋就是設計足夠的測試用例,使得判斷中每個條件的所有可能取值至少執行一次,每個判斷中的每個分支至少執行一次。
條件組合覆蓋就是設計足夠的測試用例,運行被測程序,使得每個判斷的所有可能的條件取值組合至少執行一次。
路徑測試就是設計足夠的測試用例,覆蓋程序中所有可能的路徑。
2.1.2 基本路徑測試
基本路徑
測試方法把覆蓋的路徑數壓縮到一定限度內,程序中的循環體最多只執行一次。
它是在程序控制流圖的基礎上,分析控制構造的環路復雜性,導出基本可執行路徑集合,設計測試用例的方法。設計出的測試用例要保證在測試中,程序的每一個可執行語句至少要執行一次。
2.2 黑盒測試的測試用例設計方法
2.2.1 等價劃分
所謂等價類劃分是指一套被選擇的值,這些值分別代表了許多眾多的可能輸入值,程序對其處理的方式都是一樣的。
等價類劃分的方法作為繼邊界值分析方法之后補充的測試用力設計試用的一種方法。劃分等價類、確定測試用例
等價類劃分是一種典型的黑盒測試方法,使用這一方法時,完全不考慮程序的內部結構,只依據程序的規格說明來設計測試用例。
等價類劃分方法把所有可能的輸入數據,即程序的輸入域劃分成若干部分,然后從每一部分中選取少數有代表性的數據做為測試用例
等價類的劃分有兩種不同的情況:
有效等價類:是指對于程序的規格說明來說,是合理的,有意義的輸入數據構成的集合。
無效等價類:是指對于程序的規格說明來說,是不合理的,無意義的輸入數據構成的集合。
在設計測試用例時,要同時考慮有效等價類和無效等價類的設計。
2.2.2 邊界值分析
在設計測試用例確定輸入和輸出參數時,大多數情況下都是用邊界值分析方法,采用邊界值分析設計的測試用例發現程序錯誤能力最強。
邊界值分析也是一種黑盒測試方法,是對等價類劃分方法的補充。
人們從長期的測試工作經驗得知,大量的錯誤是發生在輸入或輸出范圍的邊界上,而不是在輸入范圍的內部。因此針對各種邊界情況設計測試用例,可以查出更多的錯誤。
2.2.3 錯誤推測法
人們也可以靠經驗和直覺推測程序中可能存在的各種錯誤,從而有針對性地編寫檢查這些錯誤的例子。這就是錯誤推測法。
錯誤推測法的基本想法是:列舉出程序中所有可能有的錯誤和容易發生錯誤的特殊情況,根據它們選擇測試用例。
2.2.4 因果圖
如果程序的功能說明中含有輸入條件的組合情況,則一開始就可以選用因果圖法。如果在測試時必須考慮輸入條件的各種組合,可使用一種適合于描述對于多種條件的組合,相應產生多個動作的形式來設計測試用例,這就需要利用因果圖。
原文轉自:http://www.uml.org.cn/Test/200707021.asp