2.1.1 軟件測試的狹義和廣義觀點
G.J.Myers給出了測試定義:程序測試是為了發現錯誤而執行程序的過程。實際上這是一個狹義的概念,因為他認為測試是執行程序的過程,也就是傳統意義上的測試——代碼完成后,通過運行程序來發現程序代碼或軟件系統中的錯誤。但是,這種意義上的測試不能在代碼完成之前發現軟件系統需求及設計上的問題。如果把需求、設計上的問題遺留到后期,最終在代碼中體現出來,那么就可能會造成設計部分、編程部分或全部返工。需求階段和設計階段的缺陷在開發過程中會產生擴大效應,缺陷隨時間發展越來越嚴重,會大大增加軟件開發的成本,延長開發的周期等。這種狹義的觀點主要受軟件開發瀑布模型的影響,難以保證軟件質量。
延伸后的軟件測試,被認為是軟件測試的一種廣義概念。這就引出了廣義的軟件測試的兩個概念:靜態測試和動態測試。靜態測試和動態測試構成了一個全過程的、完整的軟件測試,而且靜態測試顯得更為重要。
推薦閱讀
- 大學計算機基礎(第二版)
- CockroachDB權威指南
- 深入淺出Prometheus:原理、應用、源碼與拓展詳解
- R語言游戲數據分析與挖掘
- Bulma必知必會
- C語言從入門到精通(第4版)
- 智能搜索和推薦系統:原理、算法與應用
- Oracle GoldenGate 12c Implementer's Guide
- MySQL入門很輕松(微課超值版)
- 深度實踐KVM:核心技術、管理運維、性能優化與項目實施
- Python物理建模初學者指南(第2版)
- Python Linux系統管理與自動化運維
- Manage Your SAP Projects with SAP Activate
- Linux Networking Cookbook
- Spring MVC Cookbook