對于代碼的單元測試,可以籠統(tǒng)的分為黑盒測試和白盒測試兩部分。
一、黑盒測試
黑盒測試又稱功能測試或者基于需求的測試。
主要的測試方法包括邊界值分析法、等價類劃分法、錯誤推斷法等
邊界值分析法:根據(jù)以往經(jīng)驗(yàn),大多數(shù)問題發(fā)生在數(shù)據(jù)的邊界處。使用該方法需要,第一:確定測試單元輸入信號的邊界值;第二:用正等于邊界值、略小于邊界值、略大于邊界值編寫測試用例進(jìn)行測試。
等價類劃分法:把輸入信號的范圍分為若干子集,在每個子集中選取有少量有代表性的數(shù)據(jù)編寫測試用例
錯誤推斷法:根據(jù)經(jīng)驗(yàn)分析,那些場景或者工況容易產(chǎn)生問題,針對性的設(shè)置用例進(jìn)行測試
黑盒測試過程中邊界值分析法是必不可少的,也是查找問題能力最強(qiáng)的。其次可以輔助使用等價類劃分法編寫一些用例。最后使用錯誤推斷法補(bǔ)充一些用例。
二、白盒測試
白盒測試又稱結(jié)構(gòu)測試或者邏輯驅(qū)動的測試。
在白盒測試又分為靜態(tài)分析和動態(tài)分析兩類。
靜態(tài)分析是指不運(yùn)行待測試的程序,通過代碼檢測、靜態(tài)結(jié)構(gòu)分析等通過工程師的邏輯思維去檢查代碼是否存在問題的方法。
動態(tài)分析是指運(yùn)行待測試程序進(jìn)行測試的方法統(tǒng)稱。
白盒測試的目的:
a 對程序模塊的所有獨(dú)立的執(zhí)行路徑至少測試一次
b 對所有的邏輯判定,取“真”與取“假”的兩種情況都至少測試一次
c 在循環(huán)的邊界和運(yùn)行界限內(nèi)執(zhí)行循環(huán)體
d 測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性等
后兩條不太理解,還請高手指點(diǎn)
做單元測試時,覆蓋度是衡量測試是否全面的,是否可靠的關(guān)鍵指標(biāo)。覆蓋度分為語句覆蓋、判定覆蓋、條件覆蓋、判定\條件覆蓋
語句覆蓋(Statement Coverage):設(shè)計測試用例,使被測程序中的每個語句至少被執(zhí)行一次
判定覆蓋(Decision Coverage,DC):又叫分支覆蓋,要求程序中的每個判斷的每個可能結(jié)果都應(yīng)該被執(zhí)行一次,即每個分支的“真”和“假”至少被執(zhí)行一次。
條件覆蓋(Condition Coverage,CC):程序中每個判定的每個條件的所有可能值至少執(zhí)行一次文章來源:http://www.zghlxwxcb.cn/news/detail-441159.html
改進(jìn)判定\條件覆蓋(Modified Conditon and Decision Coverage,MC/DC):要求設(shè)計足夠的測試用例,判定的每個條件的所有可能必須出現(xiàn)至少一次,并且每個判定的每個條件要獨(dú)立地影響判定結(jié)果。文章來源地址http://www.zghlxwxcb.cn/news/detail-441159.html
到了這里,關(guān)于黑盒測試和白盒測試的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!