動作項(Action Entry):列出在條件項的各種取值情況下應該采取的動作.
規則:任何一個條件組合的特定取值及其相應要執行的操作.在判定表中貫穿條件項和動作項的一列就是一條規則.顯然,判定表中列出多少組條件取值,也就有多少條規則,既條件項和動作項有多少列.
判定表的建立步驟:(根據軟件規格說明)
、俅_定規則的個數.假如有n個條件.每個條件有兩個取值(0,1),故有 種規則.
、诹谐鏊械臈l件樁和動作樁.
、厶钊霔l件項.
、芴钊雱幼黜.等到初始判定表.
、莺喕.合并相似規則(相同動作).
B. Beizer 指出了適合使用判定表設計測試用例的條件:
、僖幐裾f明以判定表形式給出,或很容易轉換成判定表.
、跅l件的排列順序不會也不影響執行哪些操作.
、垡巹t的排列順序不會也不影響執行哪些操作.
、苊慨斈骋灰巹t的條件已經滿足,并確定要執行的操作后,不必檢驗別的規則.
、萑绻骋灰巹t得到滿足要執行多個操作,這些操作的執行順序無關緊要.
與黑盒測試用例設計方法并重的還有白盒測試用例設計方法,我們簡單介紹:
白盒測試用例設計技術可分為邏輯覆蓋和路徑覆蓋,邏輯覆蓋又可分為以下幾種,從弱到強:
語句覆蓋(SC):設計足夠多的測試用例,確保每條語句都被執行過。
判定覆蓋(DC):設計足夠多的測試用例,確保每個判定都分別取真值與假值。
條件覆蓋(CC):設計足夠多的測試用例,確保每個條件都分別取真值與假值。(一個判定里可能包含多個條件)
判定/條件覆蓋(DCC):設計足夠多的測試用例,確保每個判定和條件分別取真值和假值。
條件組合覆蓋(CMC):設計足夠多的測試用例,確保覆蓋每個判定中的各個條件的所有組合情況。(只考慮同一個判定內的各條件組合情況)
路徑覆蓋:設計足夠多的測試用例,確保每條路徑都被執行。如果程序復雜,比如包含循環的情況,路徑覆蓋的測試用例數將會是個天文數字,無法實現?梢圆捎煤喕说穆窂礁采w,即將循環看成是一個判定,只考慮循環被執行和未執行兩種情況。
文章來源于領測軟件測試網 http://www.kjueaiud.com/