測試用例常用的7種設計方法:等價類、邊界值、場景設計法、判定表、因果圖、功能圖分析法(狀態遷移圖)、正交法、錯誤猜測法。
是把所有可能的輸入資料,即程式的輸入域劃分成若干部分(子集),然後從每乙個子集中選取少數具有代表性的資料作為測試用例。某個輸入域的子集合就是等價類。等價類劃分有兩種不同的情況:有效等價類和無效等價類。設計測試用例時,要同時考慮這兩種等價類。
有效等價類
是指對於程式的規格說明來說是合理的、有意義的輸入資料構成的集合。利用有效等價類可檢驗程式是否實現了規格說明所規定的功能和效能。
無效等價類
指對程式的規格說明是不合理的或無意義的輸入資料所構成的集合。對於具體的問題,無效等價類至少應有乙個,也可能多個。
舉例
設有乙個檔案管理系統,要求使用者輸入以年月表示的日期。假設日期限定在2023年1月~2023年12月,並規定日期由6位數字字元組成,前4位表示年,後2位表示月。現用等價類劃分法設計測試用例,來測試程式的"日期檢查功能"。
(1)劃分等價類並編號
輸入等價類
有效等價類
無效等價類
日期的型別及長度
①6位數字字元
②有非數字字元
③少於6位數字字元
④多於6位數字字元
年份範圍
⑤在1990~2049之間
⑥小於1990
⑦大於2049
月份範圍
⑧在01~12之間
⑨等於00
⑩大於12
(2)設計測試用例,覆蓋所有的有效等價類
測試資料
期望結果
覆蓋的有效等價類
200211
輸入有效
①⑤⑧(3)設計測試用例,覆蓋無效等價類
測試資料
期望結果
覆蓋的有效等價類
95june
無效輸入
②20036
無效輸入
③2001006
無效輸入
④198912
無效輸入
⑥200401
無效輸入
⑦200100
無效輸入
⑨200113
無效輸入
⑩邊界值分析法就是對輸入或輸出的邊界值進行測試的一種黑盒測試方法。通常邊界值分析法是作為對等價類劃分法的補充,這種情況下,其測試用例來自等價類的邊界。
與等價劃分的區別:
(1)邊界值分析不是從某等價類中隨便挑乙個作為代表,而是使這個等價類的每個邊界都要作為測試條件。
(2)邊界值分析不僅考慮輸入條件,還要考慮輸出空間產生的測試情況。
通常情況下,軟體測試所包含的邊界檢驗有幾種型別:數字、字元、位置、重量、大小、速度、方位、尺寸、空間等。下表舉例利用邊界值作為測試資料。
項邊界值
測試用例的設計思路
字元起始-1個字元/結束+1個字元
設乙個文字輸入區域允許輸入1個到255個 字元,輸入1個和255個字元作為有效等價類;輸入0個和256個字元作為無效等價類,這幾個數值都屬於邊界條件值。
數值最小值-1/最大值+1
假設某軟體的資料輸入域要求輸入5位的資料值,可以使用10000作為最小值、99999作為最大值;然後使用剛好小於5位和大於5位的數值來作為邊界條件。
空間小於空餘空間一點/大於滿空間一點
例如在用u盤儲存資料時,使用比剩餘磁碟空間大一點(幾kb)的檔案作為邊界條件。
在測試用例設計過程中,某些邊界值條件是不需要呈現給使用者的,或者說使用者是很難注意到的,但同時確實屬於檢驗範疇內的邊界條件,稱為內部邊界值條件或子邊界值條件。內部邊界值條件主要有下面幾種:
數值的邊界值檢驗 項
範圍或值
位(bit)
0或者1
位元組(byte)
0——225
字(word)
0~65535(單字)或 0~4294967295(雙字)
千(k)
1024
兆(m)
1048576
吉(g)
1073741824
字元的邊界值檢驗 字元
ascii碼值
字元ascii碼值
空(null)0a
65空格 (space)32a
97斜槓 ( / )47z
90048z
122冒號 ( : )
58單引號 ( 『 )96@
64其他邊界值檢驗
通過運用場景對系統的功能點或業務流程進行描述,從而提高測試效果的一種方法。模擬特定場景邊界發生的事情,通過事件來觸發某個動作的發生,觀察事件的最終結果,從而用來發現需求中存在的問題。
基本流:是經過用例的最簡單的路徑(無任何差錯,程式從開始直接執行到結束)
備選流:乙個備選流可能從基本流開始,在某個特定條件下執行,然後重新加入基本流中,也可以起源於另乙個備選流,或終止用例,不在加入到基本流中;(各種錯誤情況)
判定表是分析和表達多邏輯條件下執行不同操作的情況的工具。在一些資料處理問題當中,某些操作的實施依賴於多個邏輯條件的組合。判定表很適合於處理這類問題。
判定表由四部分組成,如下圖:
(1) 條件樁(condition stub):列出了問題的所有條件。通常認為列出的條件的次序無關緊要。
(2) 動作樁(action stub):列出了問題規定可能採取的操作。這些操作的排列順序沒有約束。
(3) 條件項(condition entry):列出針對它左列條件的取值。在所有可能情況下的真假值。
(4) 動作項(action entry):列出在條件項的各種取值情況下應該採取的動作。
判定表的建立步驟:
(1)確定規則的個數。假如有n個條件。每個條件有兩個取值(0,1),故有2的n次方種規則。
(2)列出所有的條件樁和動作樁。
(3)填入條件項。
(4)填入動作項。得到初始判定表。
(5)簡化。合併相似規則(具有相同的動作,並且其條件項之間存在著極為相似的關係)
舉例
需要確保電腦有印表機的驅動、印表機正常工作、印表機的紙張充足、印表機墨粉充足才能滿足列印。
(1)確定規則個數:4個條件,規則個數是2^4=16
(2)得到條件樁和動作樁
(3)生成判定表
*其**現多個動作項的情況,按照最先觸發的情況給出。
化簡後如下:
實際寫用例的時候可以先以一條規則為基準,每次改變乙個條件樁的條件項(有幾個條件項就改變幾次)。再進行補充或化簡。
軟體測試基礎—流程和用例設計方法自動化測試之-測試用例設計方法總結
軟體測試基礎知識 測試用例,測試用例的設計方法
測試方案和測試用例均屬於測試的設計文件,測試用例描述了輸入動作和乙個期望結果,目的是確定程式的某個功能是否能正常工作 參考依據 需求規格說明書,需求分析結果,測試方案 編寫人和時間編寫工具和輸出文件 編寫工具 excel,word,zentao,buggree,testlink 輸出文件 測試用例 ...
軟體測試基礎知識 測試用例
測試用例 test case 是為某個特殊目標而編制的一組測試輸入 執行條件以及預期結果,以便測試某個 程式 路徑或核實是否滿足某個特定需求。測試用例用到的技術 一 白盒技術 白盒測試 是結構測試,所以被測物件基本上是 源程式 以 程式 的內部邏輯為基礎設計測試用例。邏輯覆蓋 程式內部的 邏輯覆蓋 ...
軟體測試基礎知識(13)測試用例方法總結
一.測試用例方法總結 通常,在確定測試方法時,應遵循以下原則 根據程式的重要性和一旦發生故障將造成的損失來確定測試等級和測試重點認真選擇測試策略,以便能盡可能少的使用測試用例,發現盡可能多得程式錯誤。要在測試過度和測試不足中找平衡點 二.測試方法選擇 通常在確定測試方法時,有以下幾條參考原則 1.拿...