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