白盒测试中几种逻辑覆盖法及其优缺点
語句覆蓋法:
詳述:
https://blog.csdn.net/hanhanwanghaha/article/details/105633019
定義:設(shè)計(jì)若干個(gè)測(cè)試用例,使被測(cè)試程序中的每條可執(zhí)行語句至少執(zhí)行一次。比如說我們測(cè)試用例里面有10個(gè)語句,那么這10個(gè)語句都要被測(cè)試到。
優(yōu)點(diǎn):可以很直觀地從源代碼得到測(cè)試用例,無須細(xì)分每條判定表達(dá)式 ;
缺點(diǎn):種測(cè)試方法僅僅針對(duì)程序邏輯中顯式存在的語句,但對(duì)于隱藏的條件和可能到達(dá)的隱式邏輯分支,是無法測(cè)試的。例如在判斷中把&&錯(cuò)誤的寫成了||,測(cè)試用例仍可以覆蓋所有的執(zhí)行語句。 一般認(rèn)為“語句覆蓋”是很不充分的一種標(biāo)準(zhǔn),是最弱的邏輯覆蓋準(zhǔn)則。
判定覆蓋法:
詳述:
https://blog.csdn.net/hanhanwanghaha/article/details/105641120
定義:判定覆蓋是設(shè)計(jì)足夠多的測(cè)試用例,使得程序中的每一個(gè)條件判斷至少獲得一次“真”和一次“假”,即使得程序流程圖中的每一個(gè)真假分支至少被執(zhí)行一次。
優(yōu)點(diǎn):判定覆蓋具有比語句覆蓋更強(qiáng)的測(cè)試能力,同樣也無須細(xì)分每條判定表達(dá)式。
缺點(diǎn):判定覆蓋能夠滿足條件的要求,但是不能對(duì)判斷條件進(jìn)行檢查。
條件覆蓋法:
詳述:
https://blog.csdn.net/hanhanwanghaha/article/details/105653347
定義:設(shè)計(jì)測(cè)試用例,使得判定中的每個(gè)條件至少有一次取得真值,一次取得假值。所以,不僅程序中的每個(gè)語句至少被執(zhí)行一次,而且使每個(gè)判定表達(dá)式中的每個(gè)條件都取到各種可能的結(jié)果。
優(yōu)點(diǎn):條件覆蓋比判定覆蓋增加了對(duì)判定中所有條件的測(cè)試,對(duì)于條件來說更加全面
缺點(diǎn):但條件覆蓋并不能完全保證判定覆蓋。要達(dá)到條件覆蓋,需要足夠多的測(cè)試用例,但條件覆蓋并不能保證判定覆蓋。條件覆蓋只能保證每個(gè)條件至少有一次為真,而不考慮所有的判定結(jié)果。
判定/條件覆蓋法:
詳述:
https://blog.csdn.net/hanhanwanghaha/article/details/105656204
定義:設(shè)計(jì)足夠多的測(cè)試用例,使被測(cè)程序中每個(gè)判定的每個(gè)條件的所有可能取值(真假)至少執(zhí)行一次,并且每個(gè)判定的所有可能(真假)分支也至少執(zhí)行一次 。通俗來講,就是條件和判定覆蓋的升華!
優(yōu)點(diǎn):判定/條件覆蓋滿足判定覆蓋準(zhǔn)則和條件覆蓋準(zhǔn)則,彌補(bǔ)了二者的不足。
缺點(diǎn):判定/條件覆蓋準(zhǔn)則的缺點(diǎn)是未考慮條件的邏輯情況,對(duì)條件的依賴性很大,如果條件錯(cuò)了,也無法判定出來。
條件組合覆蓋法:
https://blog.csdn.net/hanhanwanghaha寶藏女孩 歡迎您的關(guān)注!
歡迎關(guān)注微信公眾號(hào):寶藏女孩的成長(zhǎng)日記
如有轉(zhuǎn)載,請(qǐng)注明出處(如不注明,盜者必究)
詳述:
https://blog.csdn.net/hanhanwanghaha/article/details/105679336
定義:設(shè)計(jì)足夠多的測(cè)試用例,使被測(cè)程序中每個(gè)判定的所有可能的條件取值組合至少執(zhí)行一次。
優(yōu)點(diǎn):多重條件覆蓋準(zhǔn)則滿足判定覆蓋、條件覆蓋和判定/條件覆蓋準(zhǔn)則。
缺點(diǎn):
1.線性地增加了測(cè)試用例的數(shù)量。
2 可能不會(huì)覆蓋所有的路徑,例如上圖的abdf路徑就沒有執(zhí)行。
路徑覆蓋法:
詳述:
https://blog.csdn.net/hanhanwanghaha/article/details/105680025
定義:運(yùn)行所測(cè)程序,要覆蓋程序中所有可能的路徑。
優(yōu)點(diǎn):這種測(cè)試方法可以對(duì)程序進(jìn)行徹底的測(cè)試路徑覆蓋面比前面五種都廣。
缺點(diǎn):由于路徑覆蓋需要對(duì)所有可能的路徑進(jìn)行測(cè)試(包括循環(huán)、條件組合、分支選擇等),那么需要設(shè)計(jì)大量、復(fù)雜的測(cè)試用例,使得工作量呈指數(shù)級(jí)增長(zhǎng)。而在有些情況下,一些執(zhí)行路徑是不可能被執(zhí)行的。
https://blog.csdn.net/hanhanwanghaha寶藏女孩 歡迎您的關(guān)注!
歡迎關(guān)注微信公眾號(hào):寶藏女孩的成長(zhǎng)日記
如有轉(zhuǎn)載,請(qǐng)注明出處(如不注明,盜者必究)
總結(jié)
以上是生活随笔為你收集整理的白盒测试中几种逻辑覆盖法及其优缺点的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# 的一些便捷用法
- 下一篇: 【工作总结】银行的等级架构