軟件測試的流程及策略


    前幾天剛考完軟件測試,其中有一道題是與軟件測試的策略有關,個人感覺對這方面還是比較薄弱,因此,想借這里總結一下軟件測試的流程及策略。

一、軟件測試流程:

    軟件測試的流程可以細分為四個階段:單元測試,集成測試,確認測試(有效性測A試)和系統測試單元測試針對軟件設計的最小單元A程序模塊,進行正確性檢驗的測試工作。它的目的在於發現各模塊內部可能存在的各種差錯集成測試在單元測試的基礎上,將所有模塊按照設計要求組裝成為系統進行測試。確認測試(有效性測試)驗證軟件的功能、性能和其它特性是否與用戶的要求一致系統測試將測試的軟件作為整個計算機系統的一個元素與計算機硬件、外設、某些支持軟件、數據和人員等其他系統元素結合在一起,在實際運行環境下,對計算機系統進行組裝測試和確認測試。

二、軟件測試的策略和流程:

    軟件測試的策略就是測試將按照什么樣的思路和方式進行如采用什么技術,什么步驟等。而軟件測試技術可以按照以下幾種方式來進行分類:

1、黑盒(功能性)測試和白盒(結構性)測試:

(1)黑盒測試:

    黑盒測試又稱功能性測試、數據驅動測試、基於規格說明的測試。它在己知軟件所應具有的功能的基礎上,檢查程序功能能否按需求規格說明書的規定正常使用,功能是否有遺漏,性能等特性要求是否滿足。在進行黑盒測試時只需參照規格說明檢查軟件,不要求考察代碼,從用戶視角來對軟件進行測試。黑盒測試的目的在於檢測軟件功能是否正確和完整,檢測是否有人機交互和數據訪問錯誤,檢測軟件行為和性能是否滿足需求以及檢測軟件初始化和終比過程是否有錯誤。

    黑盒測試要遵循以下的步驟:首先需要先根據規格說明書來生成測試用例,然后執行測試並分析覆蓋標准,最后再根據所得結果來作出結論。

(2)白盒測試:

    白盒測試又被成為結構性測試、邏輯驅動測試、基於程序的測試。它的與黑盒測試的區別在於我們在進行白盒測試的時候會將程序的執行表現與編碼意圖作比較,並且關心軟件內部設計和程序實現,而主要測試依據是代碼和設計文檔,這就能夠支持嚴格定義、數學分析和精確度量,從而更加准確的來評價一個軟件。

2、靜態測試和動態測試:

(1)靜態測試:

    靜態測試廣義上包括了人工代碼檢查,軟件度量,程序結構分析(自動審查)和自動編程規則檢查這些內容。

(2)動態測試:

    動態測試包括覆蓋測試分析和運行時的錯誤檢測。

3、傳統測試方法和面向對象測試的方法:

(1)路經測試:

    路徑測試是指根據路徑設計測試用例的一種技術,經常用於狀態轉換測試中。基本路徑測試法是在程序控制流圖的基礎上,通過分析控制構造的環路復雜性,導出基本可執行路徑集合,從而設計測試用例的方法。設計出的測試用例要保證在測試中程序的侮個可執行語句至少執行一次。

(2)數據流測試:

    前面的測試針對程序的控制流路徑,檢查程序在各種條件值、各種決策下是否有錯數據流測試主要測試程序中的數值流(覆蓋值傳遞路徑),檢測變量定義與使用的情況。它比較容易發現下列類型的錯誤:變量被定義,但是從來沒有使用;所使用的變量沒有被定義變量在使用之前被定義兩次;其它定義不當或使用不當的情況。

(3)面對對象軟件測試:

    面向對象技術開發出的程序更需要測試且對其進行測試將更復雜。面向對象軟件與傳統的軟件存在不同的軟件結構,不同的開發方法且每個開發階段都有不同以往的要求和結果,針對面向對象軟件的新特點,應有一種新的測試模型。

4、特定環境及應用的測試:

    針對面向對象的程序軟件及基於客戶/服務器體系結構等特定環境,除了能夠應用黑盒測試和白盒測試的方法之外,通常還需要采用專門的測試方法。這些測試通常被認為在以下領域開展:基於客戶/服務器體系結構與運行環境的測試;基於面向對象的測試;基於實時系統的測試。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM