測試用例編號命名規則 測試用例設計之等價類劃分法

2021-10-18 01:52:03 字數 3888 閱讀 1898

黑盒測試用例設計方法包括等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動法、正交試驗設計法、功能圖法等。 今天介紹下等價類劃分法

等價類劃分法概念

等價類劃分法是把程式的輸入域劃分成若干部分(子集),然後從每個部分中選取少數代表性資料作為測試用例。每一類的代表性資料在測試中的作用等價於這一類中的其他值。

等價類劃分法的應用

1.等價類是指某個輸入域的子集合。

在該子集合中,各個輸入資料對於揭露程式中的錯誤都是等效的,並合理地假定:測試某等價類的代表值就等於對這一類其它值的測試.

因此,可以把全部輸入資料合理劃分為若干等價類,在每乙個等價類中取乙個資料作為測試的輸入條件,就可以用少量代表性的測試資料.取得較好的測試結果.等價類劃分可有兩種不同的情況:有效等價類和無效等價類。

有效等價類:是指對於程式的規格說明來說是合理的,有意義的輸入資料構成的集合.利用有效等價類可檢驗程式是否實現了規格說明中所規定的功能和效能。

無效等價類:與有效等價類的定義恰巧相反。

設計測試用例時,要同時考慮這兩種等價類.因為,軟體不僅要能接收合理的資料,也要能經受意外的考驗.這樣的測試才能確保軟體具有更高的可靠性。

2.劃分等價類的六大原則:

在輸入條件規定了取值範圍或值的個數的情況下,則可以確立乙個有效等價類和兩個無效等價類.

例:輸入值是學生成績,範圍是0~100:

3.將等價類轉化成測試用例:

等價類劃分例項

1.某程式規定:"輸入三個整數 a 、 b 、 c 分別作為三邊的邊長構成三角形。通過程式判定所構成的三角形的型別,當此三角形為一般三角形、等腰三角形及等邊三角形時,分別作計算 … "。用等價類劃分方法為該程式進行測試用例設計。(三角形問題的複雜之處在於輸入與輸出之間的關係比較複雜。)

分析題目中給出和隱含的對輸入條件的要求:

(1)整數 (2)三個數 (3)非零數 (4)正數

(5)兩邊之和大於第三邊 (6)等腰 (7)等邊

如果 a 、 b 、 c 滿足條件( 1 ) ~ ( 4 ),則輸出下列四種情況之一:

1)如果不滿足條件(5),則程式輸出為 " 非三角形 " 。

2)如果三條邊相等即滿足條件(7),則程式輸出為 " 等邊三角形 " 。

3)如果只有兩條邊相等、即滿足條件(6),則程式輸出為 " 等腰三角形 " 。

4)如果三條邊都不相等,則程式輸出為 " 一般三角形 " 。

列出等價類表並編號

覆蓋有效等價類的測試用例:

a b c 覆蓋等價類號碼

3 4 5 (1)--(7)

4 4 5 (1)--(7),(8)

4 5 5 (1)--(7),(9)

5 4 5 (1)--(7),(10)

4 4 4 (1)--(7),(11)

覆蓋無效等價類的測試用例:

2.設有乙個檔案管理系統,要求使用者輸入以年月表示的日期。假設日期限定在2023年1月~2023年12月,並規定日期由6位數字字元組成,前4位表示年,後2位表示月。現用等價類劃分法設計測試用例,來測試程式的"日期檢查功能"。(不考慮2月的問題)

1)劃分等價類並編號,下表等價類劃分的結果

2)設計測試用例,以便覆蓋所有的有效等價類在表中列出了3個有效等價類,編號分別為①、⑤、⑧,設計的測試用例如下:

測試資料 期望結果 覆蓋的有效等價類

200211 輸入有效 ①、⑤、⑧

3)為每乙個無效等價類設計乙個測試用例,設計結果如下:

測試資料 期望結果 覆蓋的無效等價類

95june 無效輸入 ②

20036 無效輸入 ③

2001006 無效輸入 ④

198912 無效輸入 ⑥

200401 無效輸入 ⑦

200100 無效輸入 ⑨

200113 無效輸入 ⑩

3.nextdate 函式包含三個變數:month 、 day 和 year ,函式的輸出為輸入日期後一天的日期。 例如,輸入為 2023年3月 7日,則函式的輸出為 2023年3月8日 。要求輸入變數 month 、 day 和 year 均為整數值,並且滿足下列條件:

①1≤month≤12

②1≤day≤31

③1920≤year≤2050

1)有效等價類為:

m1=d1=

y1=2)若條件 ① ~ ③中任何乙個條件失效,則 nextdate 函式都會產生乙個輸出,指明相應的變數超出取值範圍,比如 "month 的值不在 1-12 範圍當中 " 。顯然還存在著大量的 year 、 month 、 day 的無效組合, nextdate 函式將這些組合作統一的輸出: " 無效輸入日期 " 。

其無效等價類為:

m2=m3=

d2=d3=

y2=y3=

弱一般等價類測試用例

月份 日期 年 預期輸出

6 15 1912 2023年6月16日

強一般等價類測試用例同弱一般等價類測試用例

注:弱--有單缺陷假設;健壯--考慮了無效值

(一)弱健壯等價類測試

用例id 月份 日期 年 預期輸出

wr1 6 15 1912 2023年6月16日

wr2 -1 15 1912 月份不在1~12中

wr3 13 15 1912 月份不在1~12中

wr4 6 -1 1912 日期不在1~31中

wr5 6 32 1912 日期不在1~31中

wr6 6 15 1811 年份不在1812~2012中

wr7 6 15 2013 年份不在1812~2012中

(二)強健壯等價類測試

用例id 月份 日期 年 預期輸出

sr1 -1 15 1912 月份不在1~12中

sr2 6 -1 1912 日期不在1~31中

sr3 6 15 1811 年份不在1812~2012中

sr4 -1 -1 1912 兩個無效乙個有效

sr5 6 -1 1811 兩個無效乙個有效

sr6 -1 15 1811 兩個無效乙個有效

sr7 -1 -1 1811 三個無效

4.佣金問題等價類測試用例,它是根據佣金函式的輸出值域定義等價類,來改進測試用例集合。

輸出銷售額≤1000元 佣金10%

1000《銷售額≤1800 佣金=100+(銷售額-1000)*15%

銷售額》1800 佣金=220+(銷售額-1800)*20%

測試用例 槍機(45) 槍托(30) 槍管(25) 銷售額 佣金

1 5 5 5 500 50

2 15 15 15 1500 175

3 25 25 25 2500 360

根據輸出域選擇輸入值,使落在輸出域等價類內,可以結合弱健壯測試用例結合。

測試用例(四)測試用例編寫

一.測試用例編寫方法 1.等價類劃分 如何選擇適當的資料子集,來代表整個資料集。通過降低測試的資料去實現 合理的 覆蓋,覆蓋了更多的可能資料,以發現更多的軟體缺陷 邊界值分析法 2.邊界值分析 使用邊界值分析方法設計測試用例時一般與等價類劃分結合起來,但它不是從乙個等價類中任選乙個例子作為代表,而是...

手機測試用例 STK測試用例

id 功能描述 操作步驟 預期結果 test time p fcomment tester test time p fcomment tester stk服務 sim卡適應性測試 1 選取支援stk功能的sim卡,插入手機中 手機應支援stk功能,會將stk選單自動加入主選單列表中 2 進入stk功...

手機測試用例 通話測試用例

id 功能描述 操作步驟 預期結果 test time p fcomment tester test time p fcomment tester 通話功能 快速檢視已撥 1 待機介面下按一下呼叫鍵可進入已撥 記錄 2 每次呼叫記錄都應正確無誤 號碼 時間 序號 通話時長等 3 呼叫記錄按呼叫時間順...