軟件測試與質量保證4 黑盒測試

目錄

黑盒測試

概念

特點

等價類方法

原理

劃分等價類

弱一般等價類測試

強一般等價類測試

弱健壯等價類測試

強健壯等價類測試

總結

邊界值方法

作用

邊界值原理與思想

一般邊界值

 健壯性測試

最壞情況測試

最壞健壯性測試

特殊值測試

 隨機測試

決策表方法

組成部分

三角形問題決策表

總結


黑盒測試

概念

黑盒測試,又稱爲功能測試或數據驅動測試,把測試對象當作看不見內部的黑盒。要求導出執行程序所有功能需求的輸入條件集,實現功能覆蓋。

黑盒測試是在軟件的接口處進行測試。

特點

  • 如果外部特性本身設計有問題或規格說明的規定有誤,用黑盒測試方法是發現不了的。
  • 黑盒測試不能替代白盒測試,而是用來發現白盒測試以 外的其他類型的錯誤。

等價類方法

原理

測試的目的是進行完備的測試,同時避免測試用例冗餘。等價類測試是通過每個等價類中的一個元素標識測試用例,降低測試用例的冗餘性。

劃分等價類

  • 等價類是指某個輸入域的子集合
  • 等價類的劃分有兩種不同的情況
  • 設計測試用例時,要同時考慮有效等價類和無效等價類設計

等價類測試重複邊界值測試的兩個決定因素,即健壯性單/多缺陷假設

等價類測試的關鍵,就是選擇確定的等價關係,必須區分弱等價類強等價類。

弱一般等價類測試

弱一般等價類測試是單缺陷假設

強一般等價類測試

強一般等價類測試基於多缺陷假設,因此,需要等價類笛卡爾積的每個元素對應的測試用例。

 

弱健壯等價類測試

單缺陷條件假設,考慮無效值的等價類測試。

  • 對於有效輸入,使用每個有效類的一個值。
  • 對於無效輸入,測試用例將擁有一個無效值,並保持其餘的值 都是有效的。

強健壯等價類測試

多缺陷條件假設,從所有等價類笛卡爾積的每個元素中獲得測試用例。

總結

  1. 等價類測試的弱形式不如強形式的測試全面
  2. 如果錯誤條件非常重要,有必要進行健壯形式的測試 
  3. 如果輸入數據以離散值區間和集合定義,則等價類測試是合 適的
  4. 通過結合邊界值測試,等價類測試可以得到加強
  5. 如果函數很複雜,需要做等價類測試
  6. 強等價類測試假設變量是獨立的,相應的測試用例相乘會引起冗餘問題。如果存在依賴關係,則常常會生成錯誤的測試 用例  
  7. 在確定合適的等價關係之前,可能需要進行多次嘗試 
  8. 強和弱形式的等價類測試之間的差別,有助於區分累進測試 和迴歸測試

邊界值方法

作用

邊界值分析是對等價類劃分方法的補充。

從測試工作經驗得知,大量的錯誤是發生在輸 入或輸出範圍的邊界上,而不是在輸入範圍的內部。

邊界值原理與思想

程序是函數

輸入:函數的定義域

輸出:函數的值域

使用的輸入變量是

  • min,min+
  • nom
  • max-,max

一般邊界值

單缺陷假設 :一個變量取極值,其他所有變量去正常值。

對於有N個變量的 函數,邊界值分析 產生4N+1個測試用例。

 健壯性測試

增加極限值:max+,min-

一個變量取極值,其他所有變量取正常值

對於有N個變量的函數,產生 6N+1個測試用例.

最壞情況測試

多個變量取極值:對每個變量 ,包含min,min+,nom,max-max集合的測試

然後再對這些集合做 笛卡爾積運算,生成測試用例

N個變量:5^n個測試 用例

最壞健壯性測試

對於最壞情況測試的健壯性測試,採用健壯性測試的七 元素集合的笛卡爾積作爲測試用例。

特殊值測試

特殊值測試大概是運用得最廣泛的一種功能性測試。當測試人員使用其領域知識、使用類似程序的經驗以及關於“軟點”信息開發測試用例時,會出現特殊值測試。

 特殊測試特別依賴測試人員的能力。儘管特殊值測試是 高度主觀性的,但是所產生的測試用例集合,常常更能有效地發現缺陷。

 隨機測試

隨機測試的思想是:不是永遠選取有界變量的最小值、略高於最小值、正常值、略低於最大值和最大值,而是使用隨機數生成器選出測試用例值。

這個程序持續生成隨機測試用例,直到每種輸出至少出現一次。

決策表方法

在所有功能性測試方法中,基於決策表的測試方法是最嚴格的,因爲決策表具有邏輯嚴格性。

組成部分

決策表有四個部分:樁部分、條目部分、條件部分、行動部分。

例如:

使用決策表標識測試用例,能夠保證一種完備的測試

爲了使用決策表標識測試用例,我們把條件解釋爲輸入,把行動解釋爲輸出。

三角形問題決策表

注意:不關心條目和不可能規則

總結

決策表技術適用於以下特徵的應用程序:

  • IF-THEN-ELSE邏輯突出
  • 輸入變量之間存在邏輯關係
  • 涉及輸出變量子集的計算
  • 輸入與輸出之間存在因果關係

決策表不能很好地伸縮,需要使用擴展條目決策表、代數簡化表,將大表分解成小表

可以使用迭代技術,逐漸改進,直到得到滿意的決策表

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章