一、軟體測驗的目的
發現缺陷
盡早和盡量多的發現被測物件中的缺陷,應該是測驗人員測驗程序中最常提起的一個測驗目標,也是所謂測驗價值的一個的重要體現,發現缺陷的目的是推動開發人員定位和修復問題,測驗人員通過再測驗和回歸測驗,確保開發人員已修復缺陷,并沒有影響原來正常的區域,從而提高產品質量,開發生命周期的每個階段,都應該有測驗的參與,并盡量多的發現本階段的缺陷,從而大大提高本階段的缺陷階段遏制能力,從而提高測驗效率、降低成本和提高質量,
推薦一個軟體測驗技術交流群:1079636098 學習路線以及對應教程免費領取
二、軟體測驗的兩大分類
1、白盒測驗
白盒測驗是把測驗物件看作一個打開的盒子,利用白盒測驗法進行動態測驗時,需要測驗軟體產品的內部結構和處理程序,不需測驗軟體產品的功能,
白盒測驗法的覆寫標準有邏輯覆寫、回圈覆寫和基本路勁測驗,其中邏輯覆寫包括陳述句覆寫、判斷覆寫、條件覆寫、判定/條件覆寫、條件組合覆寫和路徑覆寫,
白盒測驗是知道產品內部作業程序,可通過測驗來檢測產品內部動作是否按照規格說明書的規定正常進行,按照程式內部的結構測驗程式,檢驗程式中的每條通路是否都有能按預定要求正確作業,而不顧它的功能,白盒測驗的主要方法有邏輯驅動、基路測驗等,主要用于軟體驗證,
2、黑盒測驗
黑盒測驗是根據軟體的規格對軟體進行的測驗,這類測驗不考慮軟體內部的運作原理,因此軟體對用戶來說就像一個黑盒子,
測驗人員以用戶的角度,通過各種輸入和觀察軟體的各種輸出結果來發現軟體存在的缺陷,而不關心程式具體如何實作的一種軟體測驗方法,
三、白盒測驗具體分類
(1)單元測驗(unit testing),是指對軟體中的最小可測驗單元進行檢查和驗證,
樁模塊(stud)是指模擬被測模塊所呼叫的模塊,驅動模塊(driver)是指模擬被測模塊的上級模塊,驅動模塊用來接收測驗資料,啟動被測模塊并輸出結果,
(2)集成測驗(integration testing),是單元測驗的下一階段,是指將通過測驗的單元模塊組裝成系統或子系統,再進行測驗,重點測驗不同模塊的介面部門,
集成測驗就是用來檢查各個單元模塊結合到一起能否協同配合,正常運行,
(3)系統測驗(system testing),指的是將整個軟體系統看做一個整體進行測驗,包括對功能、性能,以及軟體所運行的軟硬體環境進行測驗,
系統測驗的主要依據是《系統需求規格說明書》檔案,
(4)驗收測驗(acceptance testing),指的是在系統測驗的后期,以用戶測驗為主,或有測驗人員等質量保障人員共同參與的測驗,它也是軟體正式交給用戶使用的最后一道工序,
驗收測驗又分為a測驗和beta測驗,其中a測驗指的是由用戶、 測驗人員、開發人員等共同參與的內部測驗,而beta測驗指的是內測后的公測,即完全交給最終用戶測驗,
四、黑盒測驗具體分類
1)功能測驗(function testing),是黑盒測驗的一方面,它檢查實際軟體的功能是否符合用戶的需求,
包括邏輯功能測驗(logic function testing)
界面測驗(UI testing)UI=User Interface
易用性測驗(usability testing):是指從軟體使用的合理性和方便性等角度對軟體系統進行檢查,來發現軟體中不方便用戶使用的地方,
兼容性測驗(compatibility testing):包括硬體兼容性測驗和軟體兼容性測驗
2)性能測驗(performance testing)
軟體的性能主要有時間性能和空間性能兩種
時間性能:主要指軟體的一個具體事務的回應時間(respond time),
空間性能:主要指軟體運行時所消耗的系統資源,
軟體性能測驗分為:
一般性能測驗:指的是讓被測系統在正常的軟硬體環境下運行,不向其施加任何壓力的性能測驗,
穩定性測驗也叫可靠性測驗(reliability testing):是指連續運行被測系統檢查系統運行時的穩定程度,
負載測驗(load testing):是指讓被測系統在其能忍受的壓力的極限范圍之內連續運行,來測驗系統的穩定性,
壓力測驗(stress testing):是指持續不斷的給被測系統增加壓力,直到將被測系統壓垮為止,用來測驗系統所能承受的最大壓力,(Validate the system or software can allowed the biggest stress.)
3)介面測驗(Interface Testing)
介面測驗是測驗系統組件間介面的一種測驗,介面測驗主要用于檢測外部系統與系統之間以及內部各個子系統之間的互動點,測驗的重點是要檢查資料的交換,傳遞和控制管理程序,以及系統間的相互邏輯依賴關系等,
五、其他測驗型別
回歸測驗(regression testing)是指對軟體的新的版本測驗時,重復執行上一個版本測驗時的用例,(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.)
冒煙測驗(smoke testing),是指在對一個新版本進行大規模的測驗之前,先驗證一下軟體的基本功能是否實作,是否具備可測性,(validate the major function is deployed or not in software of system when a new build or release is implement.)
隨機測驗(random testing),是指測驗中所有的輸入資料都是隨機生成的,其目的是模擬用戶的真實操作,并發現一些邊緣性的錯誤,(means or all the test data is random, to validate the some edge bugs.)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/240790.html
標籤:其他
