。。。。。。
。。。。。。 。。。。。。
。。。。。。 。。。。。。
。。。。。。
根據已列出的等價類表,按以下步驟確定測試用例:
為每個等價類規定一個唯一的編號;
設計一個測試用例,使其盡可能多地覆蓋尚未覆蓋的有效等價類。重復這一步,最后使得所有有效等價類均被測試用例所覆蓋;
設計一個新的測試用例,使其只覆蓋一個無效等價類。重復這一步,使所有無效等價類均被覆蓋。這里強調每次只覆蓋一個無效等價類。這是因為一個測試用例中如果含有多個缺陷,有可能在測試中只發現其中的一個,另一些被忽視。等價類劃分法能夠全面、系統地考慮黑盒測試的測試用例設計問題,但是沒有注意選用一些“高效的”、“有針對性的”測試用例。后面介紹的邊值分析法可以彌補這一缺點。
2.因果圖
等價類劃分法并沒有考慮到輸入情況的各種組合。這樣雖然各個輸入條件單獨可能出錯的情況已經看到了,但多個輸入情況組合起來可能出錯的情況卻被忽略。采用因果圖方法能幫助我們按一定步驟選擇一組高效的測試用例,同時,還能為我們指出程序規范的描述中存在什么問題。
利用因果圖導出測試用例需要經過以下幾個步驟:
分析程序規范的描述中哪些是原因,哪些是結果。原因常常是輸入條件或是輸入條件的等價類。結果是輸出條件。
分析程序規范的描述中語義的內容,并將其表示成連接各個原因與各個結果的“因果圖”。
由于語法或環境的限制,有些原因和結果的組合情況是不可能出現的。為表明這些特定的情況,在因果圖上使用持殊的符號標明約束條件。把因果圖轉換成判定表。把判定表的每一列寫成一個測試用例。
3.邊值分析法
邊值分析法是列出單元功能、輸入、狀態及控制的合法邊界值和非法邊界值,設計測試用例,包含全部邊界值的方法。典型地包括IF語句中的判別值,定義域、值域邊界,空或畸形輸入,末受控狀態等。邊值分析法不是一類找一個例子的方法,而是以邊界情況的處理作為主要目標專門設計測試用例的方法。另外,邊值分析不僅考查輸入的邊值,也要考慮輸出的邊值。這是從人們的經驗得出的一種有效方法。人們發現許多軟件錯誤只是在下標、數據結構和標量值的邊界值及其上、下出現,運行這個區域的測試用例發現錯誤的概率很高。
用邊值分析法設計測試用例時,有以下幾條原則:
如果輸入條件規定了取值范圍,或是規定了值的個數,則應以該范圍的邊界內及剛剛超出范圍的邊界外的值,或是分別對最大、最小及稍小于最小、稍大于最大個數作為測試用例。如有規范“某文件可包含l至255”個記錄……“,則測試用例可選1和255及0和256等。
文章來源于領測軟件測試網 http://www.kjueaiud.com/