1、從代碼可視化程度分:
黑盒測試:又稱為數據驅動測試,把測試對象當做看不見的黑盒,在完全不考慮程序內部結構和處理過程的情況下,測試者僅依據程序功能的需求規范考慮,確定測試用例和推斷測試結果的正確性。
白盒測試:又稱為結構測試或邏輯驅動測試,是一種按照程序內部邏輯結構和編碼結構,設計測試數據並完成測試的一種測試方法。
灰盒測試:是一種綜合測試法,它將“黑盒”測試與“白盒”測試結合在一起,是基於程序運行時的外部表現又結合內部邏輯結構來設計用例,執行程序並采集路徑執行信息和外部用戶接口結果的測試技術。
2、從軟件開發的過程按階段划分:
單元測試:對代碼中的最小單元,類、方法、接口等進行測試。
集成測試:對經過單元測試之后的模塊進行組裝,形成子系統,進行測試。
確認測試:又稱有效性測試。任務是驗證軟件的功能和性能及其它特性是否與用戶的要求一致。對軟件的功能和性能要求在軟件需求規格說明書中已經明確規定。它包含的信息就是軟件確認測試的基礎。
系統測試:對完整的系統進行測試。
驗收測試:軟件交付給用戶之前的最后測試活動。
回歸測試:修改了舊代碼后,重新進行測試以確認修改沒有引入新的錯誤或導致其他代碼產生錯誤。
3、從是否運行程序的角度分析
靜態測試:指不運行被測程序本身,僅通過分析或檢查源程序的語法、結構、過程、接口等來檢查程序的正確性。
動態測試:是指通過運行被測程序,檢查運行結果與預期結果的差異,並分析運行效率、正確性和健壯性等性能指標。