白盒黑盒測試設(shè)計方法ppt課件_第1頁
白盒黑盒測試設(shè)計方法ppt課件_第2頁
白盒黑盒測試設(shè)計方法ppt課件_第3頁
白盒黑盒測試設(shè)計方法ppt課件_第4頁
白盒黑盒測試設(shè)計方法ppt課件_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1 白盒測試技術(shù)設(shè)計方法白盒測試技術(shù)設(shè)計方法2 1、語句覆蓋、語句覆蓋 使程序中每個語句至少執(zhí)行一次。使程序中每個語句至少執(zhí)行一次。開場開場(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce只需設(shè)計一個測試用例只需設(shè)計一個測試用例: : 輸入數(shù)據(jù):輸入數(shù)據(jù):A=2A=2, B=0B=0, X=4X=4 即達到了語句覆蓋。即達到了語句覆蓋。語句覆蓋是最弱的語句覆蓋是最弱的邏輯覆蓋邏輯覆蓋(如:(如:AND AND 寫成寫成 OR OR,X1 X1 寫成寫成 X 1, X 1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+

2、1FFTTabdce可設(shè)計兩組測試用例可設(shè)計兩組測試用例: A=3,B=0 ,X=3 可覆蓋可覆蓋c、d分支分支 A=2,B=1 ,X=1 可覆蓋可覆蓋b、e分支分支 兩組測試用例可覆蓋所有兩組測試用例可覆蓋所有判定的真假分支判定的真假分支 判定覆蓋仍是弱的邏輯覆判定覆蓋仍是弱的邏輯覆蓋,只覆蓋了全部路徑的蓋,只覆蓋了全部路徑的一半。一半。43、條件覆蓋、條件覆蓋使每個判定的每個條件的可能取值至少執(zhí)行一次。使每個判定的每個條件的可能取值至少執(zhí)行一次。開場開場(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce滿足條件滿足條件:T1,T1, T2,

3、T2 T3,T3 T4,T4第一判定表達式第一判定表達式: :設(shè)條件設(shè)條件 A1 A1 取真取真 記為記為T1 T1 假假 T1 T1 條件條件 B=1 B=1 取真取真 記為記為T2 T2 假假 T2 T2第二判定表達式第二判定表達式: :設(shè)條件設(shè)條件 A=2 A=2 取真取真 記為記為T3 T3 假假 T3 T3 條件條件 X1 X1 取真取真 記為記為T4 T4 假假 T4 T45測試用例測試用例 通過通過 滿足的滿足的 覆蓋覆蓋A B X 途徑途徑 條件條件 分支分支1 0 3 abe T1,T2,T3,T4 b,e2 1 1 abe T1,T2,T3,T4 b,e 兩個測試用例覆蓋了

4、四個條件八種可能取值。兩個測試用例覆蓋了四個條件八種可能取值。 未覆蓋未覆蓋c、d分支,不滿足判定覆蓋的要求分支,不滿足判定覆蓋的要求. 條件覆蓋不一定包含判定覆蓋條件覆蓋不一定包含判定覆蓋 判定覆蓋也不一定包含條件覆蓋判定覆蓋也不一定包含條件覆蓋64 斷定斷定/條件覆蓋條件覆蓋 選取足夠多的選取足夠多的測試用例,使判斷測試用例,使判斷中的每個條件的所中的每個條件的所有可能取值至少執(zhí)有可能取值至少執(zhí)行一次,同時每個行一次,同時每個判斷本身的所有可判斷本身的所有可能判斷結(jié)果至少執(zhí)能判斷結(jié)果至少執(zhí)行一次行一次.開場開場(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+

5、1FFTTabdce滿足條件滿足條件:T1,T1, T2,T2 T3,T3 T4,T47測試用例測試用例 通過通過 滿足的條件滿足的條件 覆蓋覆蓋A B X 途徑途徑 分支分支2 0 4 ace T1,T2,T3,T4 c,e1 1 1 abd T1,T2,T3,T4 b,d能同時滿足判定、條件兩種覆蓋標準的取值能同時滿足判定、條件兩種覆蓋標準的取值8 5、條件組合覆蓋、條件組合覆蓋所有可能的條件取值組合至少執(zhí)行一次所有可能的條件取值組合至少執(zhí)行一次 A1, B=0 A1, B0 A 1, B=0 A 1, B0 A=2, X1 A=2, X 1 A2, X1 A2, X 1測試用例測試用例

6、通過通過 滿足的滿足的 覆蓋覆蓋A B X 途徑途徑 條件條件 分支分支2 0 4 ace T1,T2,T3,T4 c,e2 1 1 abe T1,T2,T3,T4 b,e1 0 2 abd T1,T2,T3,T4 b,d1 1 1 abd T1,T2,T3,T4 b,d9 以上根據(jù)測試數(shù)據(jù)對源程序語句檢測的詳以上根據(jù)測試數(shù)據(jù)對源程序語句檢測的詳盡程度,簡單討論了幾種邏輯覆蓋標準。在上盡程度,簡單討論了幾種邏輯覆蓋標準。在上面的分析過程中常常談到測試數(shù)據(jù)執(zhí)行的程序面的分析過程中常常談到測試數(shù)據(jù)執(zhí)行的程序路徑,顯然,測試數(shù)據(jù)可以檢測的程序路徑的路徑,顯然,測試數(shù)據(jù)可以檢測的程序路徑的多少,也反映

7、了對程序測試的詳盡程度。從對多少,也反映了對程序測試的詳盡程度。從對程序路徑的覆蓋程度分析,能夠提出下述一些程序路徑的覆蓋程度分析,能夠提出下述一些主要的邏輯覆蓋標準。主要的邏輯覆蓋標準。10黑盒測試著重測試軟件功能。黑盒測試并不能取代黑盒測試著重測試軟件功能。黑盒測試并不能取代白盒測試,它是與白盒測試互補的測試方法,它很白盒測試,它是與白盒測試互補的測試方法,它很可能發(fā)現(xiàn)白盒測試不易發(fā)現(xiàn)的其他類型的錯誤??赡馨l(fā)現(xiàn)白盒測試不易發(fā)現(xiàn)的其他類型的錯誤。黑盒測試力圖發(fā)現(xiàn)下述類型的錯誤:黑盒測試力圖發(fā)現(xiàn)下述類型的錯誤: 功能不正確功能不正確或遺漏了功能;或遺漏了功能; 界面錯誤;界面錯誤; 數(shù)據(jù)結(jié)構(gòu)錯

8、誤或外數(shù)據(jù)結(jié)構(gòu)錯誤或外部數(shù)據(jù)庫訪問錯誤;部數(shù)據(jù)庫訪問錯誤; 性能錯誤;性能錯誤; 初始化和終止初始化和終止錯誤。錯誤。黑盒測試技術(shù):等價劃分法、邊界值分析法、錯誤黑盒測試技術(shù):等價劃分法、邊界值分析法、錯誤推測法、因果圖法等。推測法、因果圖法等。6.7 黑盒測試技術(shù)理解)黑盒測試技術(shù)理解)11 1 1 等價類劃分法等價分配)等價類劃分法等價分配) 把所有可能的輸入數(shù)據(jù)把所有可能的輸入數(shù)據(jù)( (有效的和無有效的和無效的效的) )劃分成若干個等價的子集劃分成若干個等價的子集( (稱為稱為等價類別或等價區(qū)間等價類別或等價區(qū)間) ), 使得每個子使得每個子集中的一個典型值在測試中的作用與集中的一個典型

9、值在測試中的作用與這一子集中所有其它值的作用相同這一子集中所有其它值的作用相同. . 可從每個子集中選取一組數(shù)據(jù)來測試可從每個子集中選取一組數(shù)據(jù)來測試程序程序 等價類別或等價區(qū)間是指測試相同目等價類別或等價區(qū)間是指測試相同目標或者暴露相同軟件缺陷的一組測試標或者暴露相同軟件缺陷的一組測試用例用例 12例例: :某報表處理系統(tǒng)要求用戶輸入處理報某報表處理系統(tǒng)要求用戶輸入處理報表表 的日期,日期限制在的日期,日期限制在20192019年年1 1月至月至20192019年年 12 12月,即系統(tǒng)只能對該段期間內(nèi)的報月,即系統(tǒng)只能對該段期間內(nèi)的報表表 進行處理,如日期不在此范圍內(nèi),則進行處理,如日期不

10、在此范圍內(nèi),則顯顯 示輸入錯誤信息。示輸入錯誤信息。 系統(tǒng)日期規(guī)定由年、月的系統(tǒng)日期規(guī)定由年、月的6 6位數(shù)字字位數(shù)字字符組符組 成,前四位代表年,后兩位代表月。成,前四位代表年,后兩位代表月。 如何用等價類劃分法設(shè)計測試用例如何用等價類劃分法設(shè)計測試用例, , 來測試程序的日期檢查功能?來測試程序的日期檢查功能?13如何劃分等價類?如何劃分等價類?有效等價類有效等價類( (合理等價類合理等價類) )無效等價類無效等價類( (不合理等價類不合理等價類) ) 劃分等價類的標準:劃分等價類的標準:覆蓋覆蓋不相交不相交代表性代表性14劃分等價類的規(guī)則劃分等價類的規(guī)則 (1)(1)如果輸入條件規(guī)定了取

11、值范圍,可定義一個有如果輸入條件規(guī)定了取值范圍,可定義一個有 效等價類和兩個無效等價類。效等價類和兩個無效等價類。例例 輸入值是學(xué)生成績,范圍是輸入值是學(xué)生成績,范圍是0 01001000 1000 100 有效等價類有效等價類00成果成果100100無效等價類無效等價類 成果成果100100 無效等價類無效等價類 成果成果00(2)(2)如果輸入條件代表集合的某個元素,則可定義如果輸入條件代表集合的某個元素,則可定義 一個有效等價類和一個無效等價類。一個有效等價類和一個無效等價類。劃分等價類的規(guī)則:劃分等價類的規(guī)則:(3)(3)如規(guī)定了輸入數(shù)據(jù)的一組值,且程序?qū)Σ煌斎缫?guī)定了輸入數(shù)據(jù)的一組值

12、,且程序?qū)Σ煌?入值做不同處理,則每個允許的輸入值是一個入值做不同處理,則每個允許的輸入值是一個 有效等價類,并有一個無效等價類有效等價類,并有一個無效等價類( (所有不允所有不允 許的輸入值的集合許的輸入值的集合) )。例:輸入條件說明學(xué)歷可為例:輸入條件說明學(xué)歷可為: :???、本科、碩士、博士???、本科、碩士、博士四四 種之一,則分別取這四個值作為四個有效等價類種之一,則分別取這四個值作為四個有效等價類, 另外把四種學(xué)歷之外的任何學(xué)歷作為無效等價類另外把四種學(xué)歷之外的任何學(xué)歷作為無效等價類(4)(4)如果規(guī)定了輸入數(shù)據(jù)必須遵循的規(guī)則,可確定如果規(guī)定了輸入數(shù)據(jù)必須遵循的規(guī)則,可確定 一個有

13、效等價類符合規(guī)則和若干個無效等一個有效等價類符合規(guī)則和若干個無效等 價類從不同角度違反規(guī)則價類從不同角度違反規(guī)則) )。(5)(5)如已劃分的等價類各元素在程序中的處理方式如已劃分的等價類各元素在程序中的處理方式 不同,則應(yīng)將此等價類進一步劃分成更小的等不同,則應(yīng)將此等價類進一步劃分成更小的等 價類。價類。用等價類劃分法設(shè)計測試用例步驟:用等價類劃分法設(shè)計測試用例步驟:(1)(1)形成等價類表,每一等價類規(guī)定一個形成等價類表,每一等價類規(guī)定一個 唯一的編號;唯一的編號;(2)(2)設(shè)計一測試用例,使其盡可能多地覆設(shè)計一測試用例,使其盡可能多地覆 蓋尚未覆蓋的有效等價類,重復(fù)這一蓋尚未覆蓋的有效

14、等價類,重復(fù)這一 步驟,直到所有有效等價類均被測試步驟,直到所有有效等價類均被測試 用例所覆蓋;用例所覆蓋;(3)(3)設(shè)計一新測試用例,使其只覆蓋一個設(shè)計一新測試用例,使其只覆蓋一個 無效等價類,重復(fù)這一步驟直到所有無效等價類,重復(fù)這一步驟直到所有 無效等價類均被覆蓋;無效等價類均被覆蓋;第一步:等價類劃分第一步:等價類劃分輸入條件輸入條件 有效等價類有效等價類 無效等價類無效等價類 報表日期的報表日期的類型及長度類型及長度6 6位數(shù)字字符位數(shù)字字符(1)(1)有非數(shù)字字符有非數(shù)字字符 (4) (4)少于少于6 6個數(shù)字字符個數(shù)字字符 (5) (5)多于多于6 6個數(shù)字字符個數(shù)字字符 (6)

15、 (6)年份范圍年份范圍在在2019201920192019之間之間 (2) (2)小于小于2019 (7)2019 (7)大于大于2019 (8)2019 (8)月份范圍月份范圍在在1 11212之間之間(3)(3)“報表日期輸入條件的等價類表報表日期輸入條件的等價類表小于小于1 (9)1 (9)大于大于12 (10)12 (10)第二步:為有效等價類設(shè)計測試用例 測試數(shù)據(jù)測試數(shù)據(jù) 期望結(jié)果期望結(jié)果 覆蓋范圍覆蓋范圍201906201906等價類等價類(1)(2)(3)(1)(2)(3)輸入有效輸入有效對表中編號為對表中編號為1,2,31,2,3的的3 3個有效等價類用一個測試用個有效等價類

16、用一個測試用例覆蓋:例覆蓋:(1)6(1)6位數(shù)字字符位數(shù)字字符(2)(2)年在年在2019201920192019之間之間 (3)(3)月在月在1 11212之間之間第三步:為每一個無效等價類設(shè)至少 設(shè)計一個測試用例 測試數(shù)據(jù)測試數(shù)據(jù) 期望結(jié)果期望結(jié)果 覆蓋范圍覆蓋范圍003MAY003MAY等價類等價類(4)(4)輸入無效輸入無效2019520195等價類等價類(5)(5)輸入無效輸入無效20190052019005等價類等價類(6)(6)輸入無效輸入無效201905201905等價類等價類(7)(7)輸入無效輸入無效200905200905等價類等價類(8)(8)輸入無效輸入無效2019

17、00201900等價類等價類(9)(9)輸入無效輸入無效201913201913等價類等價類(10)(10)輸入無效輸入無效不能出現(xiàn)相同不能出現(xiàn)相同的測試用例的測試用例本例的本例的1010個等價類至個等價類至少需要少需要8 8個測試用例個測試用例例例: :對招干考試系統(tǒng)對招干考試系統(tǒng)“輸入學(xué)生成績子模塊輸入學(xué)生成績子模塊 設(shè)計測試錄入準考證號的測試用例設(shè)計測試錄入準考證號的測試用例準考證號數(shù)據(jù)格式定義:共準考證號數(shù)據(jù)格式定義:共6 6為數(shù)字組成,其中為數(shù)字組成,其中第一位為專業(yè)代號第一位為專業(yè)代號:1-:1-行政專業(yè)行政專業(yè),2-,2-法律專業(yè),法律專業(yè),3-3-財經(jīng)專業(yè)財經(jīng)專業(yè)后后5 5位為

18、考生順序號,編碼范圍為:位為考生順序號,編碼范圍為: 行政專業(yè)準考證號碼為行政專業(yè)準考證號碼為:110001:110001111215111215 法律專業(yè)準考證號碼為法律專業(yè)準考證號碼為:210001:210001212019212019 財經(jīng)專業(yè)準考證號碼為財經(jīng)專業(yè)準考證號碼為:310001:310001314015314015 準考證號碼的等價類劃分準考證號碼的等價類劃分 有效等價類有效等價類: (1) 110001 : (1) 110001 111215 111215 (2) 210001 (2) 210001 212019 212019 (3) 310001 (3) 310001 3

19、14015 314015 無效等價類無效等價類: (4) - : (4) - 110000 110000 (5) 111216 (5) 111216 210000 210000 (6) 212019 (6) 212019 31000 31000 (7) 314016 (7) 314016 + + 等價類劃分即把輸入空間分解成等價類劃分即把輸入空間分解成一系列子域,軟件在一個子域內(nèi)的行一系列子域,軟件在一個子域內(nèi)的行為應(yīng)是等價的。為應(yīng)是等價的。 軟件錯誤分為兩類:軟件錯誤分為兩類: 計算錯誤計算錯誤 域錯誤域錯誤u針對計算錯誤的測試方法針對計算錯誤的測試方法u針對域錯誤的測試方法針對域錯誤的測試

20、方法: :測試域邊界測試域邊界u 劃定的正確性劃定的正確性2 2 邊界值分析法邊界值分析法邊界值分析法與等價類劃分邊界值分析法與等價類劃分法區(qū)別法區(qū)別(1)(1)邊界值分析不是從某等邊界值分析不是從某等價類中價類中 隨便挑一個作為代表,隨便挑一個作為代表,而是使而是使 這個等價類的每個邊界這個等價類的每個邊界都要作都要作 為測試條件。為測試條件。(2)(2)邊界值分析不僅考慮輸邊界值分析不僅考慮輸入條件,還要考慮輸出空入條件,還要考慮輸出空間產(chǎn)生的測試情況間產(chǎn)生的測試情況被測試被測試子子 域域測試內(nèi)點測試內(nèi)點測試外點測試外點 如果在懸崖峭壁邊可以自信地安全行走,平地就不在話下。 如果軟件在能力

21、達到極限時能夠運行,那么在正常情況下就不會出什么問題。軟件邊界與懸崖很類似 邊界條件類型邊界條件類型 如果軟件測試問題如果軟件測試問題包含確定的邊界包含確定的邊界, ,那那么數(shù)據(jù)類型可能是么數(shù)據(jù)類型可能是: :數(shù)值數(shù)值字符字符位置位置數(shù)量數(shù)量速度速度地址地址尺寸尺寸還要考慮數(shù)據(jù)類型的還要考慮數(shù)據(jù)類型的特征特征: :第一個第一個/ /最后一個最后一個最小值最小值/ /最大值最大值開場開場/ /完成完成空空/ /滿滿最慢最慢/ /最快最快相鄰相鄰/ /最遠最遠超越超越/ /在內(nèi)在內(nèi)測試邊界線測試邊界線測試臨近邊界的合法數(shù)據(jù)測試臨近邊界的合法數(shù)據(jù), ,以及剛超以及剛超過邊界的非法數(shù)據(jù)過邊界的非法數(shù)據(jù)

22、. .越界測試通常簡單地加越界測試通常簡單地加1 1或很小的數(shù)或很小的數(shù) ( (對于最大值對于最大值) )和減和減1 1或很小的數(shù)或很小的數(shù)( (對對于最小值于最小值). ). 輸入輸入條件條件報表日報表日期的類期的類型及長型及長度度1 1個數(shù)字字符個數(shù)字字符5 5個數(shù)字字符個數(shù)字字符7 7個數(shù)字字符個數(shù)字字符有有1 1個非數(shù)字字符個非數(shù)字字符全部是非數(shù)字字符全部是非數(shù)字字符6 6個數(shù)字字符個數(shù)字字符顯示出錯顯示出錯顯示出錯顯示出錯顯示出錯顯示出錯顯示出錯顯示出錯顯示出錯顯示出錯輸入有效輸入有效日期日期范圍范圍月份月份范圍范圍“報表日期(報表日期( 6位數(shù)字字符)位數(shù)字字符)”邊界值分析法測試

23、用例邊界值分析法測試用例測試用例說明測試用例說明測試數(shù)據(jù)測試數(shù)據(jù)期望結(jié)果期望結(jié)果選取理由選取理由5 52019520195201900520190052019.52019.5MAY-MAY-201905201905月份為月份為1 1月月月份為月份為1212月月月份月份11212201901201901201912201912201900201900201913201913201901201901201912201912201900201900201913201913輸入有效輸入有效輸入有效輸入有效顯示出錯顯示出錯顯示出錯顯示出錯輸入有效輸入有效輸入有效輸入有效顯示出錯顯示出錯顯示出錯顯示出錯在有效范圍在有效范圍邊界上

溫馨提示

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

評論

0/150

提交評論