軟體測試是什麼?

軟件測試是什麼?

在規定條件下對軟件系統進行審核、運行、評估,檢驗軟件系統是否滿足規定需求或者找出預期結果與實際結果之間的差別。為軟件產品的質量和評價提供依據。

為什麼進行軟件測試?

確保軟件完成了它所承諾或公佈的功能。

確保軟件滿足性能和效率的要求。

確保軟件是健壯的、適應用戶的環境。

提早預防、儘早發現、及時跟蹤軟件缺陷,滿足產品發佈需求。

軟件測試怎麼測?

通過手工和自動化方式,利用各種測試工具和管理工具等手段、更早、更快、更多的發現缺陷,並確保這些缺陷得以修復。

軟件測試對象?

軟件程序。

與程序匹配的文檔。

支撐軟件運行的配置數據。

軟件測試原則

  • 1、有計劃的儘早測試,解決問題的成本越小。

  • 2、成功的測試在於發現迄今未發現的缺陷。

  • 3、測試並不能保證軟件100%的沒有問題。

  • 4、測試工作的本質都應追溯到用戶需求。

  • 5、測試的規模由小而大,從單元測試到系統測試。

  • 6、Good-enough原則,窮舉測試是不可能實現的。

軟件測試分類

按測試階段劃分

1.單元測試:

完成對最小的軟件設計單元模塊的驗證工作。對代碼風格和規則、程序設計和結構、業務邏輯等進行靜態測試。

白盒測試技術,開發人員自己執行。

2.集成測試

通過測試的單元模塊組裝成子系統,然後再進行的測試,主要測試內容是接口。

集成測試大部分是接口測試和交互測試。

  • 自頂向下

  • 自底向上

3.系統測試

將整個軟件系統全部集成好之後作為一個整體進行的測試。主要包括一下測試方向:

功能測試: 對產品的各功能進行驗證,以檢查是否滿足需求的要求。

性能測試:通過自動化測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項性能指標進行測試。

安全測試:檢查系統對非法入侵的防範能力。

兼容測試: 測試系統在不同的軟硬件環境下是否能夠正常的運行。

4.用戶驗收/確認測試

Alpha測試

–用戶在開發環境下進行的測試,Alpha測試是在一個受控的環境中進行的。

Beta測試

–由軟件的最終用戶在一個或多個用戶場所來進行的,開發者通常不在現場,用戶記錄測試中遇到的問題並報告給開發者。

對代碼的可見劃分:

1.黑盒測試:

又稱功能測試或數據驅動測試,是針對軟件的功能需求/實現進行測試,通過測試來檢測每個功能是否符合需求,不考慮程序內部的邏輯結構。

常見的黑盒測試方法:

  • 等價類劃分

  • 邊界值分析

  • 因果圖

  • 錯誤推測

  • 場景法

2.白盒測試:

白盒測試也稱結構測試或邏輯驅動測試,必須知道軟件內部工作過程,通過測試來檢測軟件內部是否按照需求、設計正常運行

白盒測試方法:邏輯覆蓋(語句覆蓋、分支覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋)、循環覆蓋(簡單循環、嵌套循環、串接循環)。

3.灰盒測試:

灰盒測試介於黑盒測試與白盒測試之間。

其他測試分類:

迴歸測試:

對軟件進行修改之後進行的測試,目的是檢驗對軟件進行的修改是否正確。一是所做的修改達到了預定的目的,也就是確認測試,二是還要保證不影響軟件的其他功能的正確性。

冒煙測試:

在軟件中,“冒煙測試”是指測試版本的主要功能,如果能通過測試,才繼續進行接下來的其它全功能測試。

對一個新版本進行大規模測試之前,先驗證一下軟件的基本功能是否實現,是否具備可測性。目的是確認軟件基本功能正常,可以進行後續的正式測試工作。

軟件測試是什麼?


分享到:


相關文章: