按測試技術分類:白盒測試與黑盒測試
從完全不同的角度出發,
2種測試思路適用於不同的測試階段 這
2種技術,是各有所長,相互補充的關係。可以發現不同型別的錯誤!
黑盒測試的概念
如何理解「黑盒子」?
1、關注程式外部結構,不考慮內部邏輯結構,不知道程式如何工作。 2
、注重軟體的功能性需求,主要針對軟體介面和軟體功能進行測試。
黑盒測試定義:黑盒測試又稱功能測試。黑盒測試就是把測試物件看成乙個不能開啟的黑盒子,在完全不考慮程式的內部結構和處理過程的情況下,只依據程式的需求規格說明書,檢查程式的功能是否符合他的功能說明。
黑盒測試發現的主要錯誤型別:
1、功能錯誤或遺漏; 2
、介面錯誤; 3
、資料庫錯誤; 4
、效能錯誤; 5
、初始化和終止錯誤。
黑盒測試基本思路:
黑盒測試是以使用者的角度,從輸入資料與輸出資料的對應關係出發進行測試的,又稱為資料驅動測試。
黑盒測試是在程式外部介面進行的測試。
如何選擇測試資料?1、
理論上,黑盒測試只有採用窮舉輸入測試,把所有可能的輸入都作為測試情況考慮,才能查出程式中所有的錯誤。 2
、實際上,測試情況有無窮多個,我們不僅要測試所有正常的輸入,而且還要對那些不合法但可能的輸入進行測試,窮舉是不可能的。 3
、因此,要有針對性的進行測試,必須精心設計測試用例,從數量極大的可用測試資料中挑選典型的測試資料,使用這些測試資料高效率地把隱藏的錯誤揭露出來。
黑盒測試的方法:
等價類劃分法、邊界值分析法、判定表法、因果圖法、場景法、錯誤推測法、正交表法、功能圖法
等價類劃分法
什麼是等價類?
等價類:是指某個輸入域的子集合。在該子集合中,各個輸入資料對於揭露程式中的錯誤都是等效的。測試某等價類的代表值就等價於對這一類其他值的測試。
有效等價類與無效等價類
對於程式的規格來說,是輸入資料構成的集合。
等價類輸入
關注點有效等價類
合理的、有意義的
功能和效能
無效等價類
不合理的、無意義的
異常處理
設計測試用例時,要同時考慮有效等價類和無效等價類的設計。軟體不能只接收合理的資料,還要經受意外的考驗,接受無效的或不合理的資料,這樣軟體才能具有較高的可靠性。
把所有可能的輸入資料劃分成若干部分(子集),然後從每乙個子集中選取少數具有代表性的資料作為測試用例。
它是一種典型的、常用的黑盒測試方法。
等價類劃分法步驟
1、劃分等價類(有時需細化) 2
、建立等價類表,等價類進行編號 3
、通過等價類匯出測試用例 1
、如何劃分等價類——等價類種類 1
、按雙邊區間劃分:如果輸入條件規定了取值範圍,或值的個數,則可以確立乙個有效等價類和兩個無效等價類 2
、按取值劃分:如果規定了輸入資料的一組值(假定
n個),且程式要對每乙個輸入值分別進行處理的情況下,可確定
n個有效等價類(每個值確定乙個有效等價類)和乙個無效等價類(所有不允許的輸入值的集合)。 3
、按單邊區間劃分:如果輸入條件規定了輸入值的集合,這時可確立乙個有效等價類和乙個無效等價類。 4
、按限制條件
/ 規則劃分:如果規定了輸入資料必須遵守的規則或限制條件,可確定乙個有效等價類(符合規則)和若干個無效等價類(從不同角度違反規則)
按處理方式細分等價類
在已劃分的等價類中,各元素在程式中的處理方式不同的情況下,則應再將該等價類進一步劃分為更小的等價類,並建立等價類表。
2、建立等價類表,並對等價類編號
在確認等價類之後,建立等價類表,列出所有劃分出的等價類,如下表:
等價類表
、等價類匯出測試用例 編號
有效輸入
覆蓋有效等價類
u0150
e01、
e02、
e03
編號無效輸入
覆蓋無效等價類
u02-40
e04u03
10.3
e05u04「g
」 e06u05「*
」 e07u06
「年」e08
u07150
e09u08
0e10
u09空
e11
匯出測試用例的原則:
從劃分出的等價類中按以下原則設計測試用例:
1、編號唯一; 2
、盡可能多地覆蓋尚未覆蓋的有效等價類; 3
、僅覆蓋乙個尚未覆蓋的無效等價類; 4
、覆蓋所有的有效和無效等價類 案例
1--多輸入條件
對於函式x∈
[a,b)∪
[b,c)∪
[c,d];y
∈[e,f)∪[
f,g]
,可得到x,
y的等價類如下表
試用前述幾種等價類測試用例設計法設計測試用例:
測試用例編號x
yf(x
,y)
1x_ab
y_ef
正常輸出
2x_bc
y_fg
正常輸出
3x_cd
y_ef
正常輸出
4xy_ef
非正常輸出
5x>d
y_fg
非正常輸出
6x_ab
y非正常輸出
7x_bc
y>g
非正常輸出
弱健壯等價類測試用例設計法
1、對於有效等價類,從每個有效等價類選取乙個值。 2
、對於無效等價類,使用乙個無效值,並保持其餘的值都是有效的。
為什麼兩種等價類的覆蓋方式不一樣?
1、對於有效等價類,採取盡量覆蓋的方式是為了全面考察軟體的功能。 2
、對於無效等價類、採取每次只覆蓋乙個的方式是因為:通常程式發現一類錯誤後就不再檢查是否還有其他錯誤。
黑盒測試之等價類劃分法
等價類劃分法是黑盒測試用例設計中一種重要常用的設計方法,它的基本思想是用一組有限的資料去代表近似無限的資料,達到能覆蓋所有情況的目的。定義 等價類是指某個輸入域的乙個特定的子集合,在該子集合中各個輸入資料對於揭露程式中的錯誤都是等效的,也就是說,如果用這個等價類中的代表值作為測試用例未發現程式錯誤,...
黑盒測試技術之等價類劃分法
在描述等價類法之前,先來解釋等價測試原理。正是基於這個原理,才有了等價類劃分測試的充分性和完備性的保證。等價類的有效與無效 劃分等價類需首先從功能規格說明書中找出所有輸入條件,然後為每個輸入條件劃分兩個或多個等價類,形成若干互不相交的子集,這些子集稱之為等價類。而所有等價類的並集就是整個測試用例的輸...
黑盒測試之等價類劃分
某城市 號碼由三部分組成。它們的名稱和內容分別是 假定被測程式能接受一切符合上述規定的 號碼,拒絕所有不符合規定的 號碼。根據該程式的規格說明,做等價類的劃分,並設計測試用例。按照上課例子列 等價類的劃分似乎沒有統一的標準?比如我這裡的無效等價類劃分得挺簡單的,可以劃分得更細一些。輸入資料 有效等價...