第五章 軟件測(cè)試_第1頁
第五章 軟件測(cè)試_第2頁
第五章 軟件測(cè)試_第3頁
第五章 軟件測(cè)試_第4頁
第五章 軟件測(cè)試_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第一部分第一部分傳統(tǒng)的軟件工程方法傳統(tǒng)的軟件工程方法第二章第二章 系統(tǒng)分析系統(tǒng)分析 第三章第三章 需求分析需求分析 第四章第四章 軟件設(shè)計(jì)軟件設(shè)計(jì) 第五章第五章 編碼與測(cè)試編碼與測(cè)試 第五章 編碼與測(cè)試&51 程序編碼程序編碼&52 測(cè)試的基本概念測(cè)試的基本概念&53 兩種測(cè)試類型兩種測(cè)試類型&54 白盒測(cè)試方法的用例設(shè)計(jì)白盒測(cè)試方法的用例設(shè)計(jì)&55 黑盒測(cè)試方法的用例設(shè)計(jì)黑盒測(cè)試方法的用例設(shè)計(jì)&56 軟件的測(cè)試步驟軟件的測(cè)試步驟&57 調(diào)試與排錯(cuò)調(diào)試與排錯(cuò)&58 軟件可靠性軟件可靠性&59 本章重點(diǎn)本章重點(diǎn)51 程序編碼

2、程序編碼基本任務(wù):基本任務(wù): 將軟件設(shè)計(jì)的結(jié)果翻譯成計(jì)算機(jī)可以將軟件設(shè)計(jì)的結(jié)果翻譯成計(jì)算機(jī)可以“理解理解”的形成的形成使用某種語言描述的使用某種語言描述的程序。程序。程序的質(zhì)量主要取決于軟件設(shè)計(jì)的質(zhì)程序的質(zhì)量主要取決于軟件設(shè)計(jì)的質(zhì)量,程序設(shè)計(jì)語言的特性和編碼途徑也對(duì)量,程序設(shè)計(jì)語言的特性和編碼途徑也對(duì)程序的可靠性、可讀性、可測(cè)試性和可維程序的可靠性、可讀性、可測(cè)試性和可維護(hù)性產(chǎn)生深遠(yuǎn)的影響。護(hù)性產(chǎn)生深遠(yuǎn)的影響。511 程序設(shè)計(jì)語言的選擇程序設(shè)計(jì)語言的選擇F 項(xiàng)目的應(yīng)用領(lǐng)域項(xiàng)目的應(yīng)用領(lǐng)域 (附表附表)F 系統(tǒng)用戶的要求系統(tǒng)用戶的要求F 可以得到的軟件工具可以得到的軟件工具F 工程規(guī)模工程規(guī)模F

3、軟件可移植性要求軟件可移植性要求F 軟件開發(fā)人員的知識(shí)水平、心理因素軟件開發(fā)人員的知識(shí)水平、心理因素程序設(shè)計(jì)語言及應(yīng)用領(lǐng)域參考表程序設(shè)計(jì)語言及應(yīng)用領(lǐng)域參考表類 型可選語言商用數(shù)據(jù)處理COBOL科學(xué)工程計(jì)算和模擬 FORTRAN PASCAL實(shí)時(shí)軟件匯編語言 Ada系統(tǒng)軟件匯編語言 C Ada智能軟件LISP PROLOG512 編碼風(fēng)格編碼風(fēng)格編碼風(fēng)格(程序設(shè)計(jì)風(fēng)格、編程風(fēng)編碼風(fēng)格(程序設(shè)計(jì)風(fēng)格、編程風(fēng)格),格),是指導(dǎo)人們編寫出邏輯簡明清晰、是指導(dǎo)人們編寫出邏輯簡明清晰、易讀易懂程序的基本原則。包括:易讀易懂程序的基本原則。包括:1、源程序文檔化:、源程序文檔化:2、數(shù)據(jù)說明:對(duì)數(shù)據(jù)添加說明

4、。數(shù)據(jù)說明:對(duì)數(shù)據(jù)添加說明。3、語句結(jié)構(gòu):結(jié)構(gòu)化、庫函數(shù)、可讀性。、語句結(jié)構(gòu):結(jié)構(gòu)化、庫函數(shù)、可讀性。4、輸入、輸入/輸出(輸出(I/O):):友好、方便使用。友好、方便使用。512 編碼風(fēng)格編碼風(fēng)格源程序文檔化源程序文檔化為了提高程序的可維護(hù)性,源代碼也為了提高程序的可維護(hù)性,源代碼也需要實(shí)現(xiàn)文檔化(內(nèi)部文檔編制)。包括需要實(shí)現(xiàn)文檔化(內(nèi)部文檔編制)。包括:1、符號(hào)名的命名:、符號(hào)名的命名:2、程序注釋:序言、功能等。程序注釋:序言、功能等。3、標(biāo)準(zhǔn)的書寫格式:、標(biāo)準(zhǔn)的書寫格式:分層縮進(jìn)分層縮進(jìn)的寫法顯示嵌套結(jié)構(gòu)層次。的寫法顯示嵌套結(jié)構(gòu)層次。512 編碼風(fēng)格編碼風(fēng)格源程序文檔化源程序文檔化i

5、f () if()elseelseif () if()elseelse52 軟件測(cè)試的基本概念軟件測(cè)試的基本概念軟件測(cè)試是軟件開發(fā)工作的最后一個(gè)環(huán)節(jié)。由于人認(rèn)識(shí)客觀事物的主觀性,難免在開發(fā)的軟件產(chǎn)品中產(chǎn)生錯(cuò)誤。為了給用戶交付一個(gè)高質(zhì)量的軟件系統(tǒng),必須對(duì)開發(fā)的系統(tǒng)進(jìn)行嚴(yán)格的測(cè)試,以便盡可能多的發(fā)現(xiàn)錯(cuò)誤。 軟件測(cè)試是保證軟件質(zhì)量,提高軟件可靠性的關(guān)鍵。521 基本概念基本概念軟件產(chǎn)品最大的成本是檢測(cè)軟件錯(cuò)誤、修正軟件錯(cuò)誤的成本。在整個(gè)軟件開發(fā)中:測(cè)試工作量40%(1)預(yù)防錯(cuò)誤: 幾乎不可實(shí)現(xiàn)(2)發(fā)現(xiàn)錯(cuò)誤: 軟件測(cè)試目的找錯(cuò)521 基本概念基本概念522 測(cè)試的目的與地位測(cè)試的目的與地位G.J.M

6、yers在中認(rèn)為: “程序測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程.” E.W.Dijkstra 指出:“程序測(cè)試能證明錯(cuò)誤的存在,但不能證明錯(cuò)誤不存在.” 測(cè)試的目的是發(fā)現(xiàn)程序中的錯(cuò)誤,是為了證明程序有錯(cuò),而不是證明程序無錯(cuò). 把證明程序無錯(cuò)當(dāng)作測(cè)試目的不把證明程序無錯(cuò)當(dāng)作測(cè)試目的不僅是不正確的僅是不正確的, , 完全做不到的,而且完全做不到的,而且對(duì)做好測(cè)試沒有任何益處,甚至是對(duì)做好測(cè)試沒有任何益處,甚至是十十分有害分有害的的. . 軟件測(cè)試要設(shè)法使軟件發(fā)生故障軟件測(cè)試要設(shè)法使軟件發(fā)生故障, ,暴露軟件錯(cuò)誤暴露軟件錯(cuò)誤 測(cè)試的測(cè)試的“成功成功”與與“失敗失敗” 能夠發(fā)現(xiàn)錯(cuò)誤的測(cè)試是成功的能夠發(fā)現(xiàn)

7、錯(cuò)誤的測(cè)試是成功的測(cè)試,否則是失敗的測(cè)試。測(cè)試,否則是失敗的測(cè)試。 “測(cè)試的目的是說明程序正確地執(zhí)行測(cè)試的目的是說明程序正確地執(zhí)行它應(yīng)有的功能它應(yīng)有的功能”也是也是錯(cuò)誤錯(cuò)誤的的. .例:程序例:程序TriangleTriangle,輸入三個(gè)整數(shù),表示一輸入三個(gè)整數(shù),表示一個(gè)三角形的三個(gè)邊長,該程序產(chǎn)生一個(gè)結(jié)果個(gè)三角形的三個(gè)邊長,該程序產(chǎn)生一個(gè)結(jié)果,指出該三角形是等邊三角形、等腰三角形,指出該三角形是等邊三角形、等腰三角形還是不等邊三角形。還是不等邊三角形。 為說明其能正確執(zhí)行它的功能,可使用為說明其能正確執(zhí)行它的功能,可使用“測(cè)試用例測(cè)試用例”(3,4,5),(5,5,6),(6,6,6),

8、”(3,4,5),(5,5,6),(6,6,6), 程序都能給出正確結(jié)果,是否就可認(rèn)為程序程序都能給出正確結(jié)果,是否就可認(rèn)為程序是正確的?是正確的?523 測(cè)試與調(diào)試測(cè)試與調(diào)試(排錯(cuò)排錯(cuò)) 測(cè)試測(cè)試 ( (test) test) 調(diào)試調(diào)試 ( (debug)debug)以已知條件開始以已知條件開始, , 使用預(yù)先定義的程序使用預(yù)先定義的程序, ,有預(yù)知的結(jié)果有預(yù)知的結(jié)果以不可知內(nèi)部以不可知內(nèi)部條件開始條件開始, ,結(jié)果一般結(jié)果一般不可預(yù)見不可預(yù)見有計(jì)劃有計(jì)劃被動(dòng)的被動(dòng)的由獨(dú)立的測(cè)試組由獨(dú)立的測(cè)試組,在不了解軟件設(shè)計(jì),在不了解軟件設(shè)計(jì)的條件下完成的條件下完成由程序作者進(jìn)行由程序作者進(jìn)行發(fā)現(xiàn)錯(cuò)誤發(fā)

9、現(xiàn)錯(cuò)誤找出錯(cuò)誤位置,排除找出錯(cuò)誤位置,排除524 測(cè)試階段工作步驟測(cè)試階段工作步驟F單元測(cè)試: 檢驗(yàn)每個(gè)模塊能否單獨(dú) 工作.F集成測(cè)試: 檢驗(yàn)概要設(shè)計(jì)中模塊接 口設(shè)計(jì)問題F確認(rèn)測(cè)試: 以需求規(guī)格說明書為檢 驗(yàn)尺度F系統(tǒng)測(cè)試: 綜合檢驗(yàn)F平行運(yùn)行:新舊兩套系統(tǒng)并行運(yùn)行,對(duì)照檢驗(yàn) 測(cè)試可視為分析、設(shè)計(jì)、編碼三個(gè)階段的最終復(fù)審,以保證軟件質(zhì)量.525 測(cè)試階段測(cè)試階段與前期工作的關(guān)系與前期工作的關(guān)系 程序中的問題根源可能在開發(fā)前期的各階段解決、糾正錯(cuò)誤也必須追溯到前期工作。測(cè)測(cè)試試與與開開發(fā)發(fā)前前期期工工作作的的關(guān)關(guān)系系決定軟件與系統(tǒng)的配合關(guān)系決定軟件與系統(tǒng)的配合關(guān)系需求分析需求分析概要設(shè)計(jì)概要設(shè)計(jì)

10、詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì) 編編 碼碼單元測(cè)試單元測(cè)試集成測(cè)試集成測(cè)試確認(rèn)測(cè)試確認(rèn)測(cè)試系統(tǒng)測(cè)試系統(tǒng)測(cè)試開發(fā)前期出現(xiàn)錯(cuò)誤的擴(kuò)展開發(fā)前期出現(xiàn)錯(cuò)誤的擴(kuò)展計(jì)劃計(jì)劃需求需求分析分析設(shè)設(shè)計(jì)計(jì)編編碼碼測(cè)測(cè)試試A A AB B軟件生存期各階段間需軟件生存期各階段間需求求保持的正確性保持的正確性用戶要求用戶要求用戶用戶: :我要什么我要什么? ?運(yùn)行結(jié)果運(yùn)行結(jié)果計(jì)算機(jī)計(jì)算機(jī): :程序運(yùn)行得程序運(yùn)行得到的結(jié)果到的結(jié)果源程序源程序程序員程序員: :我要讓計(jì)算我要讓計(jì)算機(jī)什么做機(jī)什么做? ?設(shè)計(jì)說明書設(shè)計(jì)說明書設(shè)計(jì)員設(shè)計(jì)員: :我要讓軟件我要讓軟件做什么做什么? ?需求說明書需求說明書分析員分析員: :我可以提我可以提供什么供

11、什么? ?12345理解正確性理解正確性表達(dá)正確性表達(dá)正確性理解正確性理解正確性設(shè)計(jì)正確性設(shè)計(jì)正確性表達(dá)正確性表達(dá)正確性理解正確性理解正確性編碼正確性編碼正確性運(yùn)行正確性運(yùn)行正確性輸入正確性輸入正確性相符嗎相符嗎? ?526 軟件測(cè)試的對(duì)象軟件測(cè)試的對(duì)象軟件測(cè)試不等于程序測(cè)試,軟件測(cè)試應(yīng)貫穿于軟件定義與開發(fā)的整個(gè)期間; 據(jù)美國一家公司統(tǒng)計(jì),查出的軟件錯(cuò)誤中,屬于需求分析和軟件設(shè)計(jì)的錯(cuò)誤約占 64%,屬于程序編寫的錯(cuò)誤僅占 36%。程序編寫的許多錯(cuò)誤是“先天的”。527 測(cè)試的基本原則測(cè)試的基本原則(1)(1)開發(fā)和測(cè)試隊(duì)伍分別建立開發(fā)和測(cè)試隊(duì)伍分別建立(2)(2)測(cè)試用例測(cè)試用例(測(cè)試用的一組

12、輸入數(shù)據(jù)、環(huán)測(cè)試用的一組輸入數(shù)據(jù)、環(huán)境平臺(tái)和運(yùn)行條件境平臺(tái)和運(yùn)行條件)應(yīng)由輸入數(shù)據(jù)和預(yù)應(yīng)由輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果兩部分組成期的輸出結(jié)果兩部分組成. .(3)(3)兼顧合理的輸入和不合理的輸入數(shù)據(jù)兼顧合理的輸入和不合理的輸入數(shù)據(jù)(4)(4)應(yīng)檢查程序是否作了不該做的事應(yīng)檢查程序是否作了不該做的事(5)(5)程序修改后要回歸測(cè)試程序修改后要回歸測(cè)試(6)(6)應(yīng)長期保留測(cè)試用例,直至系統(tǒng)廢棄。應(yīng)長期保留測(cè)試用例,直至系統(tǒng)廢棄。程序測(cè)試舉例例:程序 Triangle, 輸入三個(gè)整 數(shù),表示一個(gè)三角形的三個(gè)邊 長,該程序產(chǎn)生一個(gè)結(jié)果,指 出該三角形是等邊三角形、等 腰三角形還是不等邊三角形。判斷三角

13、型的測(cè)試用例設(shè)計(jì): 輸入數(shù)據(jù) 預(yù)期結(jié)果(1) 6;6;6 等邊(2) 8;8;4 等腰(3) 4;5;6 一般 還應(yīng)輸入非法數(shù)據(jù): 0; 7; 9 -7;3; 5 a; 2; 7 等528 軟件錯(cuò)誤的分類軟件錯(cuò)誤的分類F 功能錯(cuò)(需求分析錯(cuò)誤)F 軟件結(jié)構(gòu)錯(cuò)F 數(shù)據(jù)錯(cuò)F 編碼錯(cuò)F 軟件集成錯(cuò)F 測(cè)試定義與測(cè)試執(zhí)行錯(cuò)誤 529 軟件測(cè)試信息流軟件測(cè)試信息流測(cè)試過程需要三類輸入:測(cè)試過程需要三類輸入:軟件配置軟件配置: :需求規(guī)格說明書需求規(guī)格說明書 軟件設(shè)計(jì)說明書軟件設(shè)計(jì)說明書 被測(cè)源程序被測(cè)源程序測(cè)試配置測(cè)試配置: :測(cè)試計(jì)劃測(cè)試計(jì)劃 測(cè)試用例測(cè)試用例( (測(cè)試數(shù)據(jù)測(cè)試數(shù)據(jù)) ) 測(cè)試驅(qū)動(dòng)程序

14、測(cè)試驅(qū)動(dòng)程序測(cè)試工具測(cè)試工具: :軟件測(cè)試信息流軟件測(cè)試信息流軟件軟件配置配置測(cè)試測(cè)試測(cè)試測(cè)試配置配置測(cè)試測(cè)試工具工具結(jié)果結(jié)果分析分析排錯(cuò)排錯(cuò)可靠性可靠性 分析分析測(cè)試測(cè)試結(jié)果結(jié)果錯(cuò)誤錯(cuò)誤預(yù)期預(yù)期結(jié)果結(jié)果出錯(cuò)率出錯(cuò)率 改正改正的軟件的軟件預(yù)測(cè)預(yù)測(cè)的可的可靠性靠性5210 測(cè)試的方法與技術(shù)測(cè)試的方法與技術(shù)軟件測(cè)試的軟件測(cè)試的策略和方法策略和方法靜態(tài)測(cè)靜態(tài)測(cè)試方法試方法動(dòng)態(tài)測(cè)動(dòng)態(tài)測(cè)試方法試方法人工測(cè)試方法人工測(cè)試方法計(jì)算機(jī)輔助靜計(jì)算機(jī)輔助靜態(tài)分析方法態(tài)分析方法白盒測(cè)試方法白盒測(cè)試方法黑盒測(cè)試方法黑盒測(cè)試方法窮舉測(cè)試方法窮舉測(cè)試方法靜態(tài)測(cè)試:靜態(tài)測(cè)試: 基本特征是在對(duì)軟件進(jìn)行分析、檢基本特征是在對(duì)軟

15、件進(jìn)行分析、檢查和測(cè)試查和測(cè)試,不實(shí)際運(yùn)行被測(cè)試的軟件不實(shí)際運(yùn)行被測(cè)試的軟件. . 靜態(tài)測(cè)試約可找出靜態(tài)測(cè)試約可找出303070%70%的邏輯的邏輯設(shè)計(jì)錯(cuò)誤設(shè)計(jì)錯(cuò)誤. . 對(duì)對(duì)需求規(guī)格說明書需求規(guī)格說明書、軟件設(shè)計(jì)說明軟件設(shè)計(jì)說明書書、源程序源程序做結(jié)構(gòu)分析、流程圖分析做結(jié)構(gòu)分析、流程圖分析、符號(hào)執(zhí)行來找錯(cuò)、符號(hào)執(zhí)行來找錯(cuò). . 動(dòng)態(tài)測(cè)試:動(dòng)態(tài)測(cè)試:通過運(yùn)行軟件來檢驗(yàn)軟件的動(dòng)通過運(yùn)行軟件來檢驗(yàn)軟件的動(dòng)態(tài)行為和運(yùn)行結(jié)果的正確性態(tài)行為和運(yùn)行結(jié)果的正確性. .動(dòng)態(tài)測(cè)試的兩個(gè)基本要素:動(dòng)態(tài)測(cè)試的兩個(gè)基本要素:u 被測(cè)試程序被測(cè)試程序u 測(cè)試數(shù)據(jù)(測(cè)試用例)測(cè)試數(shù)據(jù)(測(cè)試用例)動(dòng)態(tài)測(cè)試方法動(dòng)態(tài)測(cè)試方法(

16、1)(1)選取定義域有效值選取定義域有效值, ,或定義域或定義域 外無效值外無效值. .(2)(2)對(duì)已選取值決定對(duì)已選取值決定預(yù)期的結(jié)果預(yù)期的結(jié)果(3)(3)用選取值執(zhí)行程序用選取值執(zhí)行程序(4)(4)執(zhí)行結(jié)果執(zhí)行結(jié)果 與與(2)(2)結(jié)果相比結(jié)果相比, , 不吻和程序有錯(cuò)不吻和程序有錯(cuò). .53 兩種類型的測(cè)試兩種類型的測(cè)試1 黑盒測(cè)試2 白盒測(cè)試531 黑盒測(cè)試黑盒測(cè)試又稱: 功能測(cè)試 數(shù)據(jù)驅(qū)動(dòng)測(cè)試 基于規(guī)格說明書的測(cè)試532 白盒測(cè)試白盒測(cè)試又稱: 結(jié)構(gòu)測(cè)試 玻璃盒測(cè)試 基于覆蓋的測(cè)試. 根據(jù)被測(cè)程序的邏輯結(jié)構(gòu)設(shè)計(jì)測(cè)試用例;力求提高測(cè)試覆蓋率;533 黑盒與白盒測(cè)試比較黑盒與白盒測(cè)試比

17、較黑盒測(cè)試是從用戶觀點(diǎn),按規(guī)格說明書要求的輸入數(shù)據(jù)與輸出數(shù)據(jù)的對(duì)應(yīng)關(guān)系設(shè)計(jì)測(cè)試用例,是根據(jù)程序外部特征進(jìn)行測(cè)試。 白盒測(cè)試是根據(jù)程序內(nèi)部邏輯結(jié)構(gòu)進(jìn)行測(cè)試。534 窮舉測(cè)試窮舉測(cè)試?yán)?輸入 三條邊長 黑盒測(cè)試可采用的測(cè)試用例數(shù)(設(shè)字長16位)執(zhí)行時(shí)間: 設(shè)測(cè)試一次需1ms 共需一萬年.=2 =2 X2 X2 3X10X2 X2 3X101616161616161414534 窮舉測(cè)試窮舉測(cè)試白盒測(cè)試?yán)?含5個(gè)分支,循環(huán)次數(shù)20,從A到B的可能路徑執(zhí)行時(shí)間: 設(shè)測(cè)試一次需2ms 窮舉測(cè)試需5億年.=5+5 +.+5 +5 =5+5 +.+5 +5 101020201 12 219191414A A

18、B B534 窮舉測(cè)試窮舉測(cè)試 不論黑盒還是白盒測(cè)試都不能進(jìn)行窮盡測(cè)試, 所以軟件測(cè)試不可能發(fā)現(xiàn)程序中存在的所有錯(cuò)誤, 因此需精心設(shè)計(jì)測(cè)試方案, 力爭盡可能少的次數(shù),測(cè)出盡可能多的錯(cuò)誤.黑盒測(cè)試與白盒測(cè)試能發(fā)現(xiàn)的錯(cuò)誤C CB BA AD D- -只能用黑盒測(cè)試發(fā)現(xiàn)的錯(cuò)誤只能用黑盒測(cè)試發(fā)現(xiàn)的錯(cuò)誤A- -只能用白盒測(cè)試發(fā)現(xiàn)的錯(cuò)誤只能用白盒測(cè)試發(fā)現(xiàn)的錯(cuò)誤- -兩種方法都能發(fā)現(xiàn)的錯(cuò)誤兩種方法都能發(fā)現(xiàn)的錯(cuò)誤- -兩種方法都不能發(fā)現(xiàn)的錯(cuò)誤兩種方法都不能發(fā)現(xiàn)的錯(cuò)誤BCD54 白盒測(cè)試的測(cè)試用例設(shè)計(jì)白盒測(cè)試的測(cè)試用例設(shè)計(jì)邏輯覆蓋法:一系列測(cè)試方法總稱,特點(diǎn)是逐漸進(jìn)行越來越完整的通路測(cè)試。例:PROCEDURE

19、 SAMPAL (A,B:REAL; VAR X:REAL); BEGIN IF (A1) AND (B=0) THEN X:=X/A IF (A=2) OR (X1) THEN X:=X+1 END; 541 邏輯覆蓋準(zhǔn)則邏輯覆蓋準(zhǔn)則(1)語句覆蓋(2)判定覆蓋(3)條件覆蓋(4)判定/條件覆蓋(5)條件組合覆蓋(6)路徑覆蓋(7)點(diǎn)覆蓋(8)邊覆蓋1語句覆蓋開始開始(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce使程序中每個(gè)語使程序中每個(gè)語句至少執(zhí)行一次句至少執(zhí)行一次只需設(shè)計(jì)一個(gè)測(cè)試用例:輸入數(shù)據(jù):A=2,B=0,X=4即達(dá)到了語句覆蓋;

20、語句覆蓋是最弱的邏輯覆蓋2判定覆蓋開始開始(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce例:可設(shè)計(jì)兩組測(cè)試用例:A=3,B=0 ,X=3 可覆蓋c、d分支 A=2,B=1 ,X=1 可覆蓋b、e分支 兩組測(cè)試用例可覆蓋所有判定的真假分支判定覆蓋仍是弱的邏輯覆蓋3 條件覆蓋 使每個(gè)判定的每個(gè)條件的可能取值至少執(zhí)行一次。第一判定表達(dá)式第一判定表達(dá)式: :設(shè)設(shè)條件條件 A1A1 取真取真 記為記為 T1T1 假假 T1T1 條件條件 B=1B=1 取真取真 記為記為 T2T2 假假 T2T2第二判定表達(dá)式第二判定表達(dá)式: :設(shè)設(shè)條件條件 A=2A

21、=2 取真取真 記為記為 T3T3 假假 T3T3 條件條件 X1X1 取真取真 記為記為 T4T4 假假 T4T43 條件覆蓋開始開始(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce滿足條件滿足條件: T1,T1, T2,T2 T3,T3 T4,T4測(cè)試用例 通過 滿足的 覆蓋A B X 路徑 條件 分支1 0 3 abe T1,T2,T3,T4 b,e2 1 1 abe T1,T2,T3,T4 b,e 兩個(gè)測(cè)試用例覆蓋了四個(gè)條件八種可能取值。未覆蓋c、d分支,不滿足判定覆蓋的要求.條件覆蓋不一定包含判定覆蓋判定覆蓋也不一定包含條件覆蓋4

22、判定/條件覆蓋 選取足夠多的測(cè)試用例,使判斷中的每個(gè)條件的所有可能取值至少執(zhí)行一次,同時(shí)每個(gè)判斷本身的所有可能判斷結(jié)果至少執(zhí)行一次.判定/條件 覆蓋開始開始(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce滿足條件滿足條件: T1,T1, T2,T2 T3,T3 T4,T4測(cè)試用例 通過 滿足的 覆蓋A B X 路徑 條件 分支2 0 4 ace T1,T2,T3,T4 c,e2 1 1 abd T1,T2,T3,T4 b,d 能同時(shí)滿足判定、條件兩種覆蓋標(biāo)準(zhǔn)。取值。測(cè)試用例 通過 滿足的 覆蓋A B X 路徑 條件 分支2 0 3 ace T1,T2,T3,T4 c,e2 1 1 abe T1,T2,T3,T4 b,e1 0 3 abe T1,T2,T3,T4 b,e1 1 1 abd T1,T2,T3,T4 b,d (5)條件組合覆蓋 所有可能的條件取值組合至少執(zhí)行一次 A1, B=0 A1, B0 A 1, B=0 A 1, B0 A=2,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論