白盒測試和黑盒測試的區別

白盒測試:

是指實際運行被測程序,通過程序的源代碼進行測試而不使用用戶界面。這種類型的測試需要從代碼句法發現內部代碼在算法、溢出、路徑和條件等方面的缺點或者錯誤,進而加以修正。白盒測試把測試對象看作一個打開的盒子。

黑盒測試:

又稱功能測試、數據驅動測試或基於規格說明的測試,是通過使用整個軟件或某種軟件功能來嚴格地測試,,而並沒有通過檢查程序的源代碼,或者很清楚地瞭解該軟件的源代碼程序具體是怎樣設計的。測試人員通過輸入他們的數據看輸出的結果,從而瞭解軟件怎樣工作。應該更適合測試網頁遊戲。黑盒測試把程序看作一個不能打開的黑盒子。

區別一:從定義上

白盒測試需要從代碼句法發現內部代碼在算法,溢出,路徑,條件等等中的缺點或者錯誤,進而加以修正。而黑盒測試着重測試軟件功能,它並不涉及程序的內部結構和內容特性。黑盒測試並不能取代白盒測試,它與白盒是互補的測試方法,它很可能發現白盒測試不易發現的其他類型錯誤。

區別二:從測試目的上

黑盒測試的目的是檢測是否有不正確或遺漏的功能;數據或者參數上,輸入能否正確接收;是否有數據結構錯誤或外部信息訪問錯誤;性能上是否能夠滿足要求;是否有初始化或終止性錯誤。而白盒測試的目的是通過在不同點檢查程序的狀態,確定實際的狀態是否與預期的狀態一致,而不顧它的功能。

區別三:檢測方式上

白盒測試是窮舉路徑測試,黑盒測試是窮舉輸入測試,這兩種方法是基於完全不同的觀點,反應了事物的兩個極端,它們各有側重和優勢,但不能彼此替代。在現代的測試理念中,這兩種測試方法不是截然分開的,而是交叉使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章