4、測試用例八大設(shè)計方法
等價類劃分方法
等價類劃分:指某個輸入域的子集合。在該子集合中,各個輸入數(shù)據(jù)對于揭露程序中的錯誤都是等效的,并合理地假定;測試某等價類的代表值就等于對這一類其它值的測試。因此,可以把全部輸入數(shù)據(jù)合理劃分為若干等價類,在每一個等價類中取一個數(shù)據(jù)作為測試的輸入條件,就可以用少量代表性的測試數(shù)據(jù),取得較好的測試結(jié)果。
等價類劃分可有兩種不同的情況:有效等價類和無效等價類。
邊界值分析方法
邊界值:是對等價類劃分方法的補充,測試工作經(jīng)驗告訴我,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。因此針對各種邊界情況設(shè)計測試用例,可以查出更多的錯誤。使用邊界值分析方法設(shè)計測試用例,首先應(yīng)確定邊界情況。通常輸入和輸出等價類的邊界,就是應(yīng)著重測試的邊界情況。應(yīng)當選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或任意值作為測試數(shù)據(jù)。
錯誤推測方法
錯誤推測:基于經(jīng)驗和直覺推測程序中所有可能存在的各種錯誤,從而有針對性的設(shè)計測試用例的方法。
錯誤推測方法的基本思想:列舉出程序中所有可能有的錯誤和容易發(fā)生錯誤的特殊情況,根據(jù)他們選擇測試用例。例如:在單元測試時曾列出的許多在模塊中常見的錯誤。以前產(chǎn)品測試中曾經(jīng)發(fā)現(xiàn)的錯誤等,這些就是經(jīng)驗的總結(jié)。還有,輸入數(shù)據(jù)和輸出數(shù)據(jù)為0的情況。輸入表格為空格或輸入表格只有一行。這些都是容易發(fā)生錯誤的情況。可選擇這些情況下的例子作為測試用例。
因果圖方法
前面介紹的等價類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸入條件之間的聯(lián)系,相互組合等。考慮輸入條件之間的相互組合,可能會產(chǎn)生一些新的情況。但要檢查輸入條件的組合不是一件容易的事情,即使把所有輸入條件劃分成等價類,他們之間的組合情況也相當多。因此必須考慮采用一種適合于描述對于多種條件的組合,相應(yīng)產(chǎn)生多個動作的形式來考慮設(shè)計測試用例。這就需要利用因果圖(邏輯模型)。因果圖方法最終生成的就是判定表。它適合于檢查程序輸入條件的各種組合情況。
判定表驅(qū)動分析方法
判定表:是分析和表達多邏輯條件下執(zhí)行不同操作的情況的工具。
正交表設(shè)計分析方法
有時候,可能因為大量的參數(shù)的組合而引起測試用例數(shù)量上的激增,同時,這些測試用例并沒有明顯的優(yōu)先級上的差距,而測試人員又無法完成這么多數(shù)量的測試,就可以通過正交表來進行縮減一些用例,從而達到盡量少的用例覆蓋盡量大的范圍的可能性。
功能圖分析方法
功能圖:由狀態(tài)遷移圖和布爾函數(shù)組成,狀態(tài)遷移圖用狀態(tài)和遷移來描述。一個狀態(tài)指出數(shù)據(jù)輸入的位置(或時間),而遷移則指明狀態(tài)的改變。同時要依靠判定表或因果圖表示的邏輯功能。
場景模擬分析方法
指根據(jù)用戶場景來模擬用戶的操作步驟,這個比較類似因果圖,但是可能執(zhí)行的深度和可行性更好。