簡介
動態方法是指通過運行被測程式,檢查運行結果與預期結果的差異,並分析運行效率和健壯性等性能,這種方法由三部分組成:構造測試實例、執行程式、分析程式的輸出結果。
所謂軟體的動態測試,就是通過運行軟體來檢驗軟體的動態行為和運行結果的正確性。目前,動態測試也是公司的測試工作的主要方式。
步驟
根據動態測試在軟體開發過程中所處的階段和作用,動態測試可分為如下幾個步驟:
單元測試
單元測試是對軟體中的基本組成單位進行測試,其目的是檢驗軟體基本組成單位的正確性。在公司的質量控制體系中,單元測試由產品組在軟體提交測試部前完成。單元測試是白盒測試。
白盒測試又稱結構測試、透明盒測試、邏輯驅動測試或基於代碼的測試。白盒測試是一種測試用例設計方法,盒子指的是被測試的軟體,白盒指的是盒子是可視的,你清楚盒子內部的東西以及裡面是如何運作的。"白盒"法全面了解程式內部邏輯結構、對所有邏輯路徑進行測試。"白盒"法是窮舉路徑測試。在使用這一方案時,測試者必須檢查程式的內部結構,從檢查程式的邏輯著手,得出測試數據。
集成測試
集成測試是在軟體系統集成過程中所進行的測試,其主要目的是檢查軟體單位之間的接口是否正確。在實際工作中,我們把集成測試分為若干次的組裝測試和確認測試。
組裝測試,是單元測試的延伸,除對軟體基本組成單位的測試外,還需增加對相互聯繫模組之間接口的測試。如三維算量軟體中,構件布置和構件工程量計算是軟體不同的組成單位,但構件工程量計算的數據直接來源於構件布置,兩者單獨進行單元測試,可能都很正常,但構件布置的數據是否能夠正常傳遞給工程量計算,則必須通過組裝測試的檢驗。集成測試是白盒測試。
確認測試,是對組裝測試結果的檢驗,主要目的是儘可能的排除單元測試、組裝測試中發現的錯誤。
系統測試
系統測試是對已經集成好的軟體系統進行徹底的測試,以驗證軟體系統的正確性和性能等滿足其規約所指定的要求。系統測試應該按照測試計畫進行,其輸入、輸出和其它動態運行行為應該與軟體規約進行對比,同時測試軟體的強壯性和易用性。如果軟體規約(即軟體的設計說明書、軟體需求說明書等文檔)不完備,系統測試更多的是依賴測試人員的工作經驗和判斷,這樣的測試是不充分的。系統測試是黑盒測試。
驗收測試
這是軟體在投入使用之前的最後測試。是購買者對軟體的試用過程。在公司實際工作中,通常是採用請客戶試用或發布Beta版軟體來實現。驗收測試是黑盒測試。
黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程式看作一個不能打開的黑盒子,在完全不考慮程式內部結構和內部特性的情況下,在程式接口進行測試,它只檢查程式功能是否按照需求規格說明書的規定正常使用,程式是否能適當地接收輸入數據而產生正確的輸出信息。黑盒測試著眼於程式外部結構,不考慮內部邏輯結構,主要針對軟體界面和軟體功能進行測試。
黑盒測試是以用戶的角度,從輸入數據與輸出數據的對應關係出發進行測試的。很明顯,如果外部特性本身設計有問題或規格說明的規定有誤,用黑盒測試方法是發現不了的。
回歸測試
即軟體維護階段,其目的是對驗收測試結果進行驗證和修改。在實際套用中,對客訴的處理就是回歸測試的一種體現。