黑盒測試:已知產品的功能設計規格,可以進行測試證明每個實現了的功能是否符合要求。
白盒測試:已知產品的內部工作過程,可以通過測試證明每種內部操作是否符合設計規格要求,所有內部成分是否以經過檢查。
軟件的黑盒測試意味着測試要在軟件的接口處進行。這種方法是把測試對象看做一個黑盒子,測試人員完全不考慮程序內部的邏輯結構和內部特性,只依據程序的需求規格說明書,檢查程序的功能是否符合它的功能說明。因此黑盒測試又叫功能測試或數據驅動測試。黑盒測試主要是爲了發現以下幾類錯誤:
- 是否有不正確或遺漏的功能?
- 在接口上,輸入是否能正確的接受?能否輸出正確的結果?
- 是否有數據結構錯誤或外部信息(例如數據文件)訪問錯誤?
- 性能上是否能夠滿足要求?
- 是否有初始化或終止性錯誤?
- 對程序模塊的所有獨立的執行路徑至少測試一遍。
- 對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測一遍。
- 在循環的邊界和運行的界限內執行循環體。
- 測試內部數據結構的有效性,等等。