學(xué)習(xí)啦 > 知識(shí)大全 > 知識(shí)百科 > 百科知識(shí) > 白盒測(cè)試是什么意思有什么優(yōu)缺點(diǎn)

白盒測(cè)試是什么意思有什么優(yōu)缺點(diǎn)

時(shí)間: 謝君787 分享

白盒測(cè)試是什么意思有什么優(yōu)缺點(diǎn)

  白盒測(cè)試是一種測(cè)試用例設(shè)計(jì)方法,盒子指的是被測(cè)試的軟件,那么你對(duì)白盒測(cè)試了解多少呢?以下是由學(xué)習(xí)啦小編整理關(guān)于什么是白盒測(cè)試的內(nèi)容,希望大家喜歡!

  白盒測(cè)試的介紹

  白盒測(cè)試又稱結(jié)構(gòu)測(cè)試、透明盒測(cè)試、邏輯驅(qū)動(dòng)測(cè)試或基于代碼的測(cè)試。白盒指的是盒子是可視的,你清楚盒子內(nèi)部的東西以及里面是如何運(yùn)作的。"白盒"法全面了解程序內(nèi)部邏輯結(jié)構(gòu)、對(duì)所有邏輯路徑進(jìn)行測(cè)試。"白盒"法是窮舉路徑測(cè)試。在使用這一方案時(shí),測(cè)試者必須檢查程序的內(nèi)部結(jié)構(gòu),從檢查程序的邏輯著手,得出測(cè)試數(shù)據(jù)。貫穿程序的獨(dú)立路徑數(shù)是天文數(shù)字。

  采用什么方法對(duì)軟件進(jìn)行測(cè)試呢?常用的軟件測(cè)試方法有兩大類:靜態(tài)測(cè)試方法和動(dòng)態(tài)測(cè)試方法。其中軟件的靜態(tài)測(cè)試不要求在計(jì)算機(jī)上實(shí)際執(zhí)行所測(cè)程序,主要以一些人工的模擬技術(shù)對(duì)軟件進(jìn)行分析和測(cè)試;而軟件的動(dòng)態(tài)測(cè)試是通過(guò)輸入一組預(yù)先按照一定的測(cè)試準(zhǔn)則構(gòu)造的實(shí)例數(shù)據(jù)來(lái)動(dòng)態(tài)運(yùn)行程序,而達(dá)到發(fā)現(xiàn)程序錯(cuò)誤的過(guò)程。在動(dòng)態(tài)分析技術(shù)中,最重要的技術(shù)是路徑和分支測(cè)試。下面要介紹的六種覆蓋測(cè)試方法屬于動(dòng)態(tài)分析方法。

  白盒測(cè)試的測(cè)試方法

  白盒測(cè)試的測(cè)試方法有代碼檢查法、靜態(tài)結(jié)構(gòu)分析法、靜態(tài)質(zhì)量度量法、邏輯覆蓋法、基本路徑測(cè)試法、域測(cè)試、符號(hào)測(cè)試、路徑覆蓋和程序變異。

  白盒測(cè)試法的覆蓋標(biāo)準(zhǔn)有邏輯覆蓋、循環(huán)覆蓋和基本路徑測(cè)試。其中邏輯覆蓋包括語(yǔ)句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。六種覆蓋標(biāo)準(zhǔn)發(fā)現(xiàn)錯(cuò)誤的能力呈由弱到強(qiáng)的變化:

  1、語(yǔ)句覆蓋每條語(yǔ)句至少執(zhí)行一次。

  2、判定覆蓋每個(gè)判定的每個(gè)分支至少執(zhí)行一次。

  3、條件覆蓋每個(gè)判定的每個(gè)條件應(yīng)取到各種可能的值。

  4、判定/條件覆蓋同時(shí)滿足判定覆蓋條件覆蓋。

  5、條件組合覆蓋每個(gè)判定中各條件的每一種組合至少出現(xiàn)一次。

  6、路徑覆蓋使程序中每一條可能的路徑至少執(zhí)行一次。

  白盒測(cè)試的要求

  1、保證一個(gè)模塊中的所有獨(dú)立路徑至少被使用一次。

  2、對(duì)所有邏輯值均需測(cè)試 true 和 false。

  3、在上下邊界及可操作范圍內(nèi)運(yùn)行所有循環(huán)。

  4、檢查內(nèi)部數(shù)據(jù)結(jié)構(gòu)以確保其有效性。

  白盒測(cè)試的實(shí)施步驟

  1、測(cè)試計(jì)劃階段:根據(jù)需求說(shuō)明書(shū),制定測(cè)試進(jìn)度。

  2、測(cè)試設(shè)計(jì)階段:依據(jù)程序設(shè)計(jì)說(shuō)明書(shū),按照一定規(guī)范化的方法進(jìn)行軟件結(jié)構(gòu)劃分和設(shè)計(jì)測(cè)試用例。

  3、測(cè)試執(zhí)行階段:輸入測(cè)試用例,得到測(cè)試結(jié)果。

  4、測(cè)試總結(jié)階段:對(duì)比測(cè)試的結(jié)果和代碼的預(yù)期結(jié)果,分析錯(cuò)誤原因,找到并解決錯(cuò)誤。

  白盒測(cè)試的優(yōu)缺點(diǎn)

  優(yōu)點(diǎn)

  1、迫使測(cè)試人員去仔細(xì)思考軟件的實(shí)現(xiàn)

  2、可以檢測(cè)代碼中的每條分支和路徑

  3、揭示隱藏在代碼中的錯(cuò)誤

  4、對(duì)代碼的測(cè)試比較徹底

  5、最優(yōu)化

  缺點(diǎn)

  1、昂貴

  2、無(wú)法檢測(cè)代碼中遺漏的路徑和數(shù)據(jù)敏感性錯(cuò)誤

  3、不驗(yàn)證規(guī)格的正確性

  白盒測(cè)試三步法

  1、根據(jù)代碼的功能,人工設(shè)計(jì)測(cè)試用例進(jìn)行基本功能測(cè)試;

  2、統(tǒng)計(jì)白盒覆蓋率,為未覆蓋的白盒單位設(shè)計(jì)測(cè)試用例,實(shí)現(xiàn)完整的白盒覆蓋,比較理想的覆蓋率是實(shí)現(xiàn)100%語(yǔ)句、條件、分支、路徑覆蓋;

  3、自動(dòng)生成大量的測(cè)試用例,捕捉"程序員未處理某些特殊輸入"形成的錯(cuò)誤。

  第1步的測(cè)試用例通常是現(xiàn)成的,因?yàn)樵敿?xì)設(shè)計(jì)文檔會(huì)規(guī)定程序的基本功能,沒(méi)有文檔的,程序員在編程時(shí)也要想清楚程序的功能,這些基本功能就是基本測(cè)試用例;

  第2步是在第1步的基礎(chǔ)上,檢查未覆蓋的白盒單位,由于未覆蓋的邏輯單位通常對(duì)應(yīng)未測(cè)試的等價(jià)類,因此第2步可以找出第1步所遺漏的測(cè)試用例;

  第3步用自動(dòng)動(dòng)態(tài)測(cè)試彌補(bǔ)第2步的固有缺陷。

  "三步法"盡量避免重復(fù)工作,白盒方法和黑盒方法相結(jié)合,人工方法和自動(dòng)方法相補(bǔ)充,如果第2步的覆蓋率比較理想,那么基本上可以保證找出所有等價(jià)類。在開(kāi)發(fā)過(guò)程允許的限度內(nèi),"三步法"已接近極限,當(dāng)?shù)闷?quot;徹底測(cè)試"四個(gè)字。


看過(guò)“白盒測(cè)試的優(yōu)缺點(diǎn)”的人還看了:

1.測(cè)試工程師的自我評(píng)價(jià)

2.測(cè)試工程師試用期自我評(píng)價(jià)范文

3.從程序員到軟件測(cè)試工程師的路該怎么走

4.測(cè)試工程師職業(yè)生涯規(guī)劃模板

5.測(cè)試工程師筆試題目及答案

1617271