什麼是黑盒測試與白盒測試

來源:趣味百科館 1.61W

白盒測試也被稱爲結構測試,主要用於檢測軟件編碼過程中的錯誤。程序員的編程經驗、對於編程軟件的掌握程度、工作狀態等等因素都會影響到編程的質量,導致代碼錯誤;黑盒測試又被稱爲功能測試,主要是檢查軟件的每一個功能,是否能夠正常使用。

什麼是黑盒測試與白盒測試

什麼是白盒測試和黑盒測試?有什麼區別?

白盒測試:

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

黑盒測試:

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

區別一:從定義上

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

區別二:從測試目的上

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

區別三:檢測方式上

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

擴展資料

白盒測試的優點:

1.能仔細考慮軟件的實現

2.可檢測代碼中的每條分支和路徑

3.揭示隱藏在代碼中的錯誤

4.對代碼的測試比較徹底

白盒測試的缺點:

1.昂貴

2.無法檢測代碼中遺漏的路徑和數據敏感性錯誤

3.不驗證規格的正確性

黑盒測試的優點:

1.對於子系統甚至系統效率要比白盒測試高

2.測試人員不需要了解實現的細節(特定編程語言)

3.測試人員和編程人員彼此獨立

4.從用戶的角度進行測試很容易理解和接受

5.有助於暴露規格的不一致或有歧義的問題

6.測試用例可以在規格完成後馬上進行

黑盒測試的缺點: 

1.只有一小部分輸入被測試到,要測試每個可能的輸入幾乎不可能。

2.沒有清晰、簡明的規格,測試用例很難設計。

3.如果測試人員不被告知開發人員已經執行過的用例,在測試數據上會存在不必要的重複。

4.有很多程序路徑沒有被測試到。

5.不能直接針對特定程序段測試,而這些程序段可能很複雜,有可能隱藏更多的問題。

6.大部分和研究相關的測試都是直接針對白盒測試的。

參考資料:百度百科-黑盒測試白盒測試

什麼是黑盒測試和白盒測試?

黑盒測試也稱功能測試或數據驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,並且保持外部信息(如數據庫或文件)的完整性。

重點詞語:完全不考慮程序內部結構和內部特性

白盒測試也稱結構測試或邏輯驅動測試,它是知道產品內部工作過程,可通過測試來檢測產品內部動作是否按照規格說明書的規定正常進行,按照程序內部的結構測試程序,檢驗程序中的每條通路是否都有能按預定要求正確工作,而不顧它的功能,白盒測試的主要方法有邏輯驅動、基路測試等,主要用於軟件驗證。

重點詞語:

按照程序內部的結構測試程序,檢驗程序中的每條通路是否都有能按預定要求正確工作

什麼是黑盒測試和白盒測試

軟件測試按照測試技術劃分可以有:黑盒測試,白盒測試,灰盒測試

黑盒測試又叫功能測試

1.軟件黑色盒子,裏邊的實現,看不見代碼

2.輸入,輸出結果---功能測試的方法

這是因爲在黑盒測試中主要關注被測軟件的功能實現,而.不是內部邏輯。

在黑盒測試中,被測對象的內部結構,運作情況對測試人員是不可見的,測試人員主要是驗證系統功能與需求的一致性。

在絕大多數沒有用戶參與的黑盒測試中,最常見的測試有:功能性測試、容量測試、安全性測試、負載測試、恢復性測試、標杆測試、穩定性測試、可靠性測試等。

在我們軟件測試行業中最常見的還是功能測試,考察個人對需求的掌握度和軟件工程的基本知識。

白盒測試

1.白色透明的黑子;代碼實現,功能邏輯;

2.開發--看代碼---單元測試

是一種測試用例設計方法,在這裏盒子指的是被測試的軟件,白盒,顧名思義即盒子是可視的,你可以清楚盒子內部.的東西以及裏面是如何運作的,因此白盒測試需要你對系統內部的結構和工作原理有一-個清楚的瞭解,並且基於這個知識來設計你的用例。

白盒測試技術一般可被分爲靜態分析和動態分析兩類技術。

白盒測試優點:迫使測試人員去仔細的思考軟件的實現可以檢測代碼中的每條分支和路徑揭示隱藏在代碼中的錯誤對代碼的測試比較徹底,最優化。

白盒測試缺點:無法檢測代碼中遺漏的路徑和數據敏感性錯誤不驗證格式的正確性。

灰盒測試(補充)

1.介於白盒黑盒兩者之間

2.瞭解實現流程邏輯,不需要知道具體代碼

3.接口測試---使用方法

白盒測試和黑盒測試往往不是決然分開的,一般在白盒測試中交叉使用黑盒測試的方法,在黑盒測試中交叉使用白盒測試的方法。

最常見的灰盒測試是集成測試

熱門標籤