白盒測試:是通過程序的源代碼進行測試而不使用用戶界面。
※ 白盒測試的優點有: 1)幫助軟件測試人員增大代碼的覆蓋率,提高代碼的質量,發現代碼中隱藏的問題。
※ 白盒測試的缺點有: 2)程序運行會有很多不同的路徑,不可能測試所有的運行路徑;測試基於代碼,只能測試開發人 員做的對不對,而不能知道設計的正確與否,可能會漏掉一些功能需求;系統龐大時,測試開銷 會非常大。
黑盒測試:又被稱為功能測試、數據驅動測試或基於規格說明的測試,是通過使用整個軟件或某種軟件功能來嚴格地測試, 而並沒有通過檢查程序的源代碼或者很清楚地了解該軟件的源代碼程序具體是怎樣設計的。
※ 黑盒測試的優點有: 1)比較簡單,不需要了解程序內部的代碼及實現; 2)與軟件的內部實現無關; 3)從用戶角度出發,能很容易的知道用戶會用到哪些功能,會遇到哪些問題; 4)基於軟件開發文檔,所以也能知道軟件實現了文檔中的哪些功能; 5)在做軟件自動化測試時較為方便。
※ 黑盒測試的缺點有: 1)不可能覆蓋所有的代碼,覆蓋率較低,大概只能達到總代碼量的 30%; 2)自動化測試的復用性較低。