本節討論的這些測試技術的目的是幫助識別測試條件、測試用例和測試資料。
4.1.1 選擇測試技術
選擇使用何種測試技術取決於多種因素,包括:
• 元件或系統的型別
• 元件或系統的複雜性
• 法規標準
• 客戶或合同需求
• 風險級別
• 風險型別
• 測試目標
• 文件可用性
• 測試人員的知識和技能
• 工具可用性
• 時間和預算
• 軟體開發生命週期模型
• 軟體的預期使用
• 被測元件或系統上使用測試技術的以前經驗
• 元件或系統中預期的缺陷型別
有些技術更適用於特定場景和測試級別;而有些則適用於所有測試級別。建立測試用例時,測試人員通常使用測試技術的組合以實現測試工作的最佳結果。
在測試分析、測試設計和測試實現活動中使用測試技術可以從非常不正式(很少或沒有文件)到非常正式。正式程度取決於測試的上下文,包括測試和開發過程的成熟度、時間限制、安全或監管要求、參與人員的知識和技能,以及所遵循的軟體開發生命週期模型。
4.1.2 測試技術分類和特性
本大綱中將測試技術分類為黑盒、白盒,或基於經驗的。
黑盒測試技術(又稱行為或基於行為的技術)基於對適當的測試依據的分析(例如正式的需求文件、規格說明、用例、使用者故事或業務流程)。這些技術既適用於功能測試,也適用於非功能測試。黑盒測試技術關注在測試物件的輸入和輸出上,而沒有參考其內部結構。
白盒測試技術(又稱結構或基於結構的技術)基於對測試物件的架構、詳細設計、內部結構或**的分析。與黑盒測試技術不同,白盒測試技術關注在測試物件的內部結構和處理。
基於經驗的測試技術利用開發人員、測試人員和使用者的經驗來設計、實現和執行測試。這些技術通常與黑盒和白盒測試技術結合在一起。
黑盒測試技術的共同特點包括:
• 測試條件、測試用例和測試資料來自測試依據,其中可能包括軟體需求、規格說明、用例和使用者故事
• 測試用例可用來發現需求與需求實現之間的差距,以及與需求之間的偏離情況
• 覆蓋率的度量基於測試依據中被測試的條目和應用於測試依據的技術
白盒測試技術的共同特點包括:
• 測試條件、測試用例和測試資料來自測試依據,其中可能包括**、軟體架構、詳細設計或任何其他有關軟體結構的資訊**
• 覆蓋率的度量基於選定結構(例如**或介面)內被測試的條目
• 規格說明常常被用作額外的資訊**,以確定測試用例的預期結果
基於經驗的測試技術的共同特點包括:
• 測試條件、測試用例和測試資料來自測試依據,其中可能包括測試人員、開發人員、使用者和其他利益相關者的知識和經驗
國際標準(iso/iec/ieee 29119-4)包含了測試技術及其相應覆蓋率度量的說明(技術詳情見craig 2023年和copeland 2004)。
按照測試技術分類
軟體測試按照測試技術分類可以分為 黑盒測試 白盒測試 灰盒測試。1.語句覆蓋每條語句至少執行一次。2.判定覆蓋每個判定的每個分支至少執行一次。3.條件覆蓋每個判定的每個條件應取到各種可能的值。4.判定 條件覆蓋同時滿足判定覆蓋條件覆蓋。5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。6.路...
軟體測試技術分類
檢視程式內部 黑盒和白盒 黑盒 功能和效能測試 不用考慮內部情況,按照程式功能按正常規定使用,檢視程式是否能把輸入資料產生為正確結果 功能測試 邏輯功能,介面,易用性,安裝,相容性 效能測試 一般效能,穩定性,壓力,負載 通過自動化的測試工具模擬多種正常 峰值以及異常負載條件來對系統的各項指標進行測...
軟體測試分類 按照測試技術劃分
第一種劃分 白盒測試 黑盒測試 灰盒測試 白盒測試 結構測試 通過 對程式內部結構的分析 檢測 來尋找問題。白盒測試可以把程式看成裝在乙個透明的白盒子裡,也就是清楚了解程式結構和處理過程,檢查是否所有的 結構及路徑 都是正確的,檢查軟體內部動作是否按照設計說明的規定正常進行。黑盒測試 通過軟體的 外...