什麼是黑盒測試法?

General 更新 2024-05-17

什麼是黑盒測試?

黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常使用。在測試地,把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下,在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數據而產生正確的輸出信息。黑盒測試著眼於程序外部結構,不考慮內部邏輯結構,主要針對軟件界面和軟件功能進行測試。

黑盒測試是以用戶的角度,從輸入數據與輸出數據的對應關係出發進行測試的。很明顯,如果外部特性本身有問題或規格說明的規定有誤,用墨盒測試方法是發現不了的。

黑盒測試法注重於測試軟件的功能需求,主要試圖發現下列幾類錯誤。

功能不正確或遺漏;

界面錯誤;

數據庫訪問錯誤;

性能錯誤;

初始化和終止錯誤等。

從理論上講,黑盒測試只有採用窮舉輸入測試,把所有可能的輸入都作為測試情況考慮,才能查出程序中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但可能的輸入進行測試。這樣看來,完全測試是不可能的,所以我們要進行有針對性的測試,通過制定測試案例指導測試的實施,保證軟件測試有組織、按步驟,以及有計劃地進行。黑盒測試行為必須能夠加以量化,才能真正保證軟件質量,而測試用例就是將測試行為具體量化的方法之一。具體的黑盒測試用例設計方法包括等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動法、正交試驗設計法、功能圖法等。

等價類劃分的辦法是把程序的輸入域劃分成若干部分(子集),然後從每個部分中選取少數代表性數據作為測試用例。每一類的代表性數據在測試中的作用等價於這一類中的其他值。該方法是一種重要的,常用的黑盒測試用例設計方法。

1) 劃分等價類: 等價類是指某個輸入域的子集合。在該子集合中,各個輸入數據對於揭露程序中的錯誤都是等效的,併合理地假定:測試某等價類的代表值就等於對這一類其它值的測試.因此,可以把全部輸入數據合理劃分為若干等價類,在每一個等價類中取一個數據作為測試的輸入條件,就可以用少量代表性的測試數據.取得較好的測試結果.等價類劃分可有兩種不同的情況:有效等價類和無效等價類.

有效等價類:是指對於程序的規格說明來說是合理的,有意義的輸入數據構成的集合.利用有效等價類可檢驗程序是否實現了規格說明中所規定的功能和性能.

無效等價類:與有效等價類的定義恰巧相反.

設計測試用例時,要同時考慮這兩種等價類.因為,軟件不僅要能接收合理的數據,也要能經受意外的考驗.這樣的測試才能確保軟件具有更高的可靠性.

2)劃分等價類的方法:下面給出六條確定等價類的原則.

①在輸入條件規定了取值範圍或值的個數的情況下,則可以確立一個有效等價類和兩個無效等價類.

②在輸入條件規定了輸入值的集合或者規定了“必須如何”的條件的情況下,可確立一個有效等價類和一個無效等價類.

③在輸入條件是一個布爾量的情況下,可確定一個有效等價類和一個無效等價類.

④在規定了輸入數據的一組值(假定n個),並且程序要對每一個輸入值分別處理的情況下,可確立n個有效等價類和一個無效等價類.

⑤在規定了輸入數據必須遵守的規則的情況下,可確立一個有效等價類(符合規則)和若干個無效等價類(從不同角度違反規則).

⑥在確知已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應再將該等價類進一步的劃分為更小的等價類.

3)設計測試用例:在確立了等價類後,可建立等價類表,列出所有劃分出的等價類:

輸入條件 有效等價類 無效......

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

黑盒測試和白盒測試:黑盒測試  黑盒測試也稱功能測試或數據驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,並且保持外部信息(如數據庫或文件)的完整性。黑盒測試方法主要有等價類劃分、邊值分析、因—果圖、錯誤推測等,主要用於軟件確認測試。 “黑盒”法著眼於程序外部結構、不考慮內部邏輯結構、針對軟件界面和軟件功能進行測試。“黑盒”法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯誤。白盒測試: 白盒測試也稱結構測試或邏輯驅動測試,它是知道產品內部工作過程,可通過測試來檢測產品內部動作是否按照規格說明書的規定正常進行,按照程序內部的結構測試程序,檢驗程序中的每條通路是否都有能按預定要求正確工作,而不顧它的功能,白盒測試的主要方法有邏輯驅動、基路測試等,主要用於軟件驗證。“白盒”法全面瞭解程序內部邏輯結構、對所有邏輯路徑進行測試。“白盒”法是窮舉路徑測試。在使用這一方案時,測試者必須檢查程序的內部結構,從檢查程序的邏輯著手,得出測試數據。黑盒測試和白盒測試  任何工程產品(注意是任何工程產品)都可以使用以下兩種方法之一進行測試。黑盒測試:已知產品的功能設計規格,可以進行測試證明每個實現了的功能是否符合要求。白盒測試:已知產品的內部工作過程,可以通過測試證明每種內部操作是否符合設計規格要求,所有內部成分是否以經過檢查。  軟件的黑盒測試意味著測試要在軟件的接口處進行。這種方法是把測試對象看做一個黑盒子,測試人員完全不考慮程序內部的邏輯結構和內部特性,只依據程序的需求規格說明書,檢查程序的功能是否符合它的功能說明。因此黑盒測試又叫功能測試或數據驅動測試。黑盒測試主要是為了發現以下幾類錯誤:  軟件的白盒測試是對軟件的過程性細節做細緻的檢查。這種方法是把測試對象看做一個打開的盒子,它允許測試人員利用程序內部的邏輯結構及有關信息,設計或選擇測試用例,對程序所有邏輯路徑進行測試。通過在不同點檢查程序狀態,確定實際狀態是否與預期的狀態一致。因此白盒測試又稱為結構測試或邏輯驅動測試。白盒測試主要是想對程序模塊進行如下檢查:1、對程序模塊的所有獨立的執行路徑至少測試一遍。2、對所有的邏輯判定,取“真”與取“假”的兩種情況都能至少測一遍。3、在循環的邊界和運行的界限內執行循環體。4、測試內部數據結構的有效性,等等。  以上事實說明,軟件測試有一個致命的缺陷,即測試的不完全、不徹底性。由於任何程序只能進行少量(相對於窮舉的巨大數量而言)的有限的測試,在未發現錯誤時,不能說明程序中沒有錯誤。

黑盒測試法的基本簡介

黑盒測試又稱基於規格說明的測試,它是指那些使用基於規格說明方法和準則的測試活動,根據程序需求和產品規格說明來發現程序錯誤。黑盒測試方法主要有等價類劃分、邊值分析、因—果圖、錯誤推測等,主要用於軟件確認測試。

什麼是黑盒測試法,它的常用方法有哪些

“黑盒”測的是功能

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

“黑盒”法著眼於程序外部結構、不考慮內部邏輯結構、針對軟件界面和軟件功能進行測試。“黑盒”法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。

“黑盒”的兩種基本方法

黑盒測試有兩種基本方法,即通過測試和失敗測試。

在進行通過測試時,實際上是確認軟件能做什麼,而不會去考驗其能力如何。軟件測試員只運用最簡單,最直觀的測試案例。

在設計和執行測試案例時,總是先要進行通過測試。在進行破壞性試驗之前,看一看軟件基本功能是否能夠實現。這一點很重要,否則在正常使用軟件時就會奇怪地發現,為什麼會有那麼多的軟件缺陷出現?

在確信了軟件正確運行之後,就可以採取各種手段通過搞“垮”軟件來找出缺陷。純粹為了破壞軟件而設計和執行的測試案例,被稱為失敗測試或迫使出錯測試。

黑盒測試的設計方法

黑盒測試是以用戶的觀點,從輸入數據與輸出數據的對應關係出發進行測試的,它不涉及到程序的內部結構。很明顯,如果外部特性本身有問題或規格說明的規定有誤,用黑盒測試方法是發現不了的。黑盒測試法注重於測試軟件的功能需求,主要試圖發現幾類錯誤:功能不對或遺漏、界面錯誤、數據結構或外部數據庫訪問錯誤、性能錯誤、初始化和終止錯誤。

具體的黑盒測試方法包括等價類劃分、因果圖、正交實驗設計法、邊值分析、判定表驅動法、功能測試等。在使用時,自然要針對開發項目的特點對方法加以適當的選擇。

◆ 等價類劃分

等價類劃分是一種典型的黑盒測試方法,用這一方法設計測試用例可以不用考慮程序的內部結構,只以對程序的要求和說明,即需求規格說明書為依據,仔細分析和推敲說明書的各項需求,特別是功能需求,把說明中對輸入的要求和輸出的要求區別開來並加以分解。

由於窮舉測試的數量太大,以致於無法實際完成,促使我們在大量的可能數據中選取其中的一部分作為測試用例。例如,在不瞭解等價分配技術的前提下,測試了1+1、1+2、1+3和1+4之後,還有必要測試1+5和1+6嗎?能否放心地認為它們正確嗎?那麼1+999…(可以輸入的最大數值)呢?這個測試用例是否與其他用例不同?是否屬於另外一種類別?另外一個等價區間?這是軟件測試員必須考慮到的問題。

等價類別或者等價區間是指測試相同目標或者暴露相同軟件缺陷的一組測試案例。 1+999…和1+13有什麼區別呢?至於1+13,就像一個普通的加法,與1+5或者1+392沒有什麼兩樣,而1+999…則屬於鄰界的極端情況。假如輸入最大允許數值,然後加1,就會出現問題——也許就是軟件的缺陷。這個極端案例屬於一個單獨的區間,與常規數字的普通區間不同。

等價類劃分的辦法是把程序的輸入域劃分成若干部分,然後從每個部分中選取少數代表性數據當作測試用例。每一類的代表性數據在測試中的作用等價於這一類中的其他值,也就是說,如果某一類中的一個例子發現了錯誤,這一等價類中的其他例子也能出現同樣的錯誤。使用這一方法設計測試用例,首先必須在分析需求規格說明......

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

軟件測試的兩個方面而已。

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

黑盒測試:是通過使用整個軟件或某種軟件功能來嚴格地測試, 而並沒有通過檢查程序的源代碼或者很清楚地瞭解該軟件的源代碼程序具體是怎樣設計的。測試人員通過輸入他們的數據然後看輸出的結果從而瞭解軟件怎樣工作。在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求

規格說明書的規定正常使用,程序是否能適當地接收和正確的輸出

黑盒測試的方法有哪些?定義分別是什麼?

具體的黑盒測試方法包括等價類劃分、因果圖、正交實驗設計法、邊值分析、判定表驅動法、功能測試等。

等價類劃分

等價類劃分是一種典型的黑盒測試方法,用這一方法設計測試用例可以不用考慮程序的內部結構,只以對程序的要求和說明,即需求規格說明書為依據,仔細分析和推敲說明書的各項需求,特別是功能需求,把說明中對輸入的要求和輸出的要求區別開來並加以分解。

邊界值分析

軟件測試常用的一個方法是把測試工作按同樣的形式劃分。對數據進行軟件測試,就是檢查用戶輸入的信息、返回結果以及中間計算結果是否正確。邊界值分析(Boundary Value Analysis,BVA)是一種補充等價劃分的測試用例設計技術,它不是選擇等價類的任意元素,而是選擇等價類邊界的測試用例。

錯誤推測法是基於經驗和直覺推測程序中所有可能存在的各種錯誤, 從而有針對性的設計測試用例的方法. 錯誤推測方法的基本思想: 列舉出程序中所有可能有的錯誤和容易發生錯誤的特殊情況,根據他們選擇測試用例. 例如, 在單元測試時曾列出的許多在模塊中常見的錯誤. 以前產品測試中曾經發現的錯誤等, 這些就是經驗的總結. 還有, 輸入數據和輸出數據為0的情況. 輸入表格為空格或輸入表格只有一行. 這些都是容易發生錯誤的情況. 可選擇這些情況下的例子作為測試用例.

考慮採用一種適合於描述對於多種條件的組合,相應產生多個動作的形式來考慮設計測試用例. 這就需要利用因果圖(邏輯模型).

因果圖方法最終生成的就是判定表. 它適合於檢查程序輸入條件的各種組合情況.

就是使用已經造好了的正交表格來安排試驗並進行數據分析的一種方法,目的是用最少的測試用例達到最高的測試覆蓋率

參考資料:baike.baidu.com/view/51274.htm

什麼是黑盒測試法 黑盒測試法的優缺點

產品功能各個分支上的邏輯問題。

UI樣式的問題。

功能之間的相互影響。

用戶體驗問題。

黑盒測試的方法有哪些

“黑盒”的兩種基本方法 黑盒測試有兩種基本方法,即通過測試和失敗測試。 在進行通過測試時,實際上是確認軟件能做什麼,而不會去考驗其能力如何。軟件

黑盒測試的主要設計用例方法有哪些

黑盒測試用例設計方法包括等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動法、正交試驗設計法、功能圖法等。

什麼叫黑盒測試,能說的通俗點嗎

從理論上講,黑盒測試只有採用窮舉輸入測試,把所有可能的輸入都作為測試情況考慮,才能查出程序中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但可能的輸入進行測試。這樣看來,完全測試是不可能的,所以我們要進行有針對性的測試,通過制定測試案例指導測試的實施,保證軟件測試有組織、按步驟,以及有計劃地進行。黑盒測試行為必須能夠加以量化,才能真正保證軟件質量,而測試用例就是將測試行為具體量化的方法之一。具體的黑盒測試用例設計方法包括等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動法、正交試驗設計法、功能圖法等。

相關問題答案
什麼是黑盒測試法?
什麼是廢物測試?
什麼是遊戲測試?
什麼是半飛鉛釣法?
什麼是一建考試?
什麼叫單元測試?
什麼是黑匣子?
什麼是實際利率法?
什麼是錯位加減法?
什麼是番茄工作法?