3. 按是否運行劃分
3.1 靜態測試
不運行被測程序本身,僅通過分析或檢查源程序的語法、結構、過程、接口等來檢查程序的正確性。對需求規格說明書、軟件設計說明書、源程序做結構分析、流程圖分析、符號執行來找錯。分析如下:
- 檢查項:代碼風格和規則審覈;程序設計和結構的審覈;業務邏輯的審覈;走查、審查與技術複審手冊。
- 靜態質量:度量所依據的標準是ISO9126,。在該標準中,軟件質量用以下幾個方面來衡量,即功能性、可靠性、可用性、有效性、可維護性、可移植性。
代碼靜態分析和文檔測試都屬於靜態測試。
3.2 動態測試
動態測試是指通過運行被測程序,檢查運行結果與預期結果的差異,並分析運行效率、正確性和健壯性等性能。這種方法由三部分組成:構造測試用例、執行程序、分析程序的輸出結果。
大多數軟件測試工作都屬於動態測試。