白盒测试用例练习.docx_第1页
白盒测试用例练习.docx_第2页
白盒测试用例练习.docx_第3页
白盒测试用例练习.docx_第4页
白盒测试用例练习.docx_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

白盒測試用例練習1為以下所示程序段設計一組測試用例,要求分別滿足語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、組合覆蓋和路徑覆蓋,並畫出相應程序流程圖。void DoWork (int x,int y,int z) int k=0,j=0; if ( (x3)&(z5) ) j=x*y+10; /語句塊2 j=j%3; /語句塊3k=0j=0k=x*y-1j=sqrt(k)x3 and z5eYj=x*y+10Ndj=j%3由這個流程圖可以看出,該程序模塊有4條不同路徑:P1:(a-c-e) P2:(a-c-d)P3:(a-b-e) P4:(a-b-d)將裏面判定條件和過程記錄如下:判定條件Mx3 and z51、 語句覆蓋測試用例輸入輸出判定M取值判定N取值覆蓋路徑x=4,z=5,y=8k=31,j=0TTP1(a-c-e)2、判定覆蓋p1和p4可以作為測試用例,其中p1作為取真路徑,p4作為取反路徑。測試用例輸入 輸出判定M取值判定N取值覆蓋路徑x=4,z=5,y=8k=31,j=0TTP1(a-c-e)x=2,z=11,y=5k=0,j=0FFP4(a-b-d)也可以讓測試用例測試路徑P2和P3。相應兩組輸入數據如下:測試用例輸入輸出判定M取值判定N取值覆蓋路徑x=5,z=5,y=4k=19,j=sqrt(19)%3TFP2(a-c-d)x=4,z=11,y=6k=0,j=1FTP3(a-b-e)3、條件覆蓋對於M:x3取真時T1,取假時F1; z5取真時T4,取假時F4。條件:x3,z5條件:x=10,x!=4,y3,z5P1(a-c-e)x=3,z=11,y=5k=0, j=0F1,F2,F3,F4x=10,x!=4,y3,z5P1(a-c-e)x=3,z=11,y=5k=0, j=0F1,F2,F3,F4x=10,x!=4,y3,z3,z=103) x=3,z10 4)x=105)x=4,y5 6)x=4,y5 8)x!=4,y c) & (b + c a) & (a + c b) / 判斷為三角形 if(a = b) & (b =c) / 判斷為等邊三角形 return 3; if(a = b) | (b = c) | (a = c) / 判斷為等腰三角形 return 2; else / 判斷為普通三角形 return 1; else / 為非三角形 return 0; 二、程序流程圖三、測試用例 1.語句覆蓋測試用例輸入 期望輸出 覆蓋對象 測試結果 Case1 a=1, b=2, c=3 0 , 0Case2a=3, b=4, c=5 1 , , , 1Case3a=3, b=3, c=4 2 , , , 2Case4a=3, b=4, c=5 3 , , 32.判定覆蓋測試用例輸入 期望輸出 覆蓋對象 測試結果 Case11a=1, b=2, c=3 0 , 0Case12a=3, b=4, c=5 1 , , , 1Case13a=3, b=3, c=4 2 , , , 2Case14a=3, b=4, c=5 3 , , 33.條件覆蓋測試用例輸入 期望輸出 覆蓋對象 測試結果 Case5a=1, b=6, c=7 0 F1, T2, T3 0 Case6a=7, b=1, c=6 0 T1, F2, T3 0 Case7a=1, b=7, c=6 0 T1, T2, F3 0 Case8a=3, b=3, c=4 2 T1, T2, T3, T4, F5, T6, F7, F8 2 Case9a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 Case10a=4, b=3, c=3 2 T1, T2, T3, F4, T5, F6, T7, F8 2 4.條件-判定覆蓋測試用例輸入 期望輸出 覆蓋對象 測試結果 Case15a=1, b=6, c=7 0 F1, T2, T3 0 Case16a=7, b=1, c=6 0 T1, F2, T3 0 Case17a=1, b=7, c=6 0 T1, T2, F3 0 Case18a=3, b=3, c=4 2 T1, T2, T3, T4, F5, T6, F7, F8 2 Case19a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 Case20a=4, b=3, c=3 2 T1, T2, T3, F4, T5, F6, T7, F8 2 Case21a=3, b=3, c=3 3 F1, T2, T3 (3 , , ) 3 Case22a=3, b=4, c=5 1 T1, F2, T3 (, , , ) 1 5.條件組合覆蓋測試用例輸入 期望輸出 覆蓋對象 測試結果 Case23a=1, b=6, c=7 0 F1, T2, T3 0 Case24a=7, b=1, c=6 0 T1, F2, T3 0 Case25a=1, b=7, c=6 0 T1, T2, F3 0 Case26a=3, b=3, c=4 2 T1, T2, T3, T4, F5, T6, F7, F8 2 Case27a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 Case28a=4, b=3, c=3 2 T1, T2, T3, F4, T5, F6, T7, F8 2 Case29a=3, b=4, c=5 1 T1, T2, T3, F4, F5, F6, F7, F8 1 Case30a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 備注 其他條件組合,無法到達結束 四、程序控制流圖基本路徑覆蓋測試用例輸入 期望輸出 覆蓋對象 測試結果 Case31 a=1, b=6, c=7 0 A-D 0 Case32 a=7, b=6, c=1 0 A-B-D 0 Case33 a=1, b=7, c=6 0 A-B-C-D 0 Case34 a=3, b=3, c=3 3 A-B-C-E-G-H 3 Case35 a=3, b=3, c=4 2 A-B-C-E-G-I 2 Case36 a=4, b=3, c=3 2 A-B-C-E-F-H 2 Case37 a=3, b=4, c=3 2 A-B-C-E-F-J-H 2 Case38 a=3, b=4, c=5 1 A-B-C-E-F-J-K 1 題目三:計算生日是星期幾已知公元1年1月1日是星期一。編寫一個程序,只要輸入年月日,就能回答那天是星期幾。應用邏輯覆蓋方法和基路徑測試方法為上面問題設計測試用例一程序代碼#includeint check(int year,int month,int day)int pass=1;int leap=0; if( (year%4=0 & year%100!=0 )| year%400=0 ) leap=1; if(year1 |day31)return 0;break; case 4:case 6:case 9:case 11:if(day30) return 0; break; case 2: if(leap=1&day29) return 0; if(leap=0&day28)return 0; break; default:return 0;break; return pass; void fun()int year,month,day,sumday; sumday=0;printf(input year,month,day:n); scanf(%d%d%d,&year,&month,&day);if(check(year,month,day)=0)printf(輸入日期無效);return;if(month=1|month=2) month+=12; year-;sumday=(day+2*month+3*(month+1)/5+year+year/4-year/100+year/400)%7;if(month=13|month=14) month-=12; year+;switch(sumday) case 0:printf(%d-%d-%d is Mondayn,year,month,day);break; case 1:printf(%d-%d-%d is Tuesdayn,year,month,day);break; case 2:printf(%d-%d-%d is Wednesdayn,year,month,day);break; case 3:printf(%d-%d-%d is Thurdayn,year,month,day);break; case 4:printf(%d-%d-%d is Fridayn,year,month,day);break; case 5:printf(%d-%d-%d is Saturdayn,year,month,day);break; case 6:printf(%d-%d-%d is Sundayn,year,month,day);break;default:printf(date error);break; main() for(int i=0;i14;i+) fun();二畫出程序控制流圖1.程序流程圖如下:12.程序控制流圖如下:3.用基本路徑測試路徑編號基本路徑編號基本路徑1(21)(24)(31)(33)11(0)2(34)12(0)3(21)(34)13(0)4(21)(22)(34)14(0)5(21)(23)(34)15(0)(11)6(21)(24)(34)16(0)(12)7(21)(31)(34)17(0)(13)8(21)(22)(33)18(0)(14)9(21)(23)(33)10(21)(31)(33)條件:編號條件編號編號T1month=1T13year%100!=0T25month=2T2month=2T14year%100!=0T26month=3T3month=13T15year%400=0T27month=4T4month=14T16year1T28month=5T5sumday=0T17day31T31month=8T8sumday=3T20day30T32month=9T9sumday=4T21leap=1T33month=10T10sumday=5T22leap=0T34month=11T11sumday=6T23day29T35month=12T12year%4=0T24day284.測試用例用例編號 輸入數據預期輸出實際輸出執行路徑覆蓋條件12012 2 1WednesdayWednesday(0)T12,T13,T25,T21,T2,T4,T722012 3 1ThurdayThurday(0)T12,T13,T26,T832012 4 6FridayFriday(0)T12,T13,T27,T942012 5 5SaturdaySaturday(0)(11)T12,T13,T28,T1052012 6 3SundaySunday(0)(12)T12,T13,T29,T1162012 7 30MondayMonday(0)(13)T12,T13,T30,T572000 8 15TuesdayTuesday(0)(14)T12,T15,T31,T682012 9 31錯誤提示錯誤提示(0)T12,T13,T20,T3292013 2 8WednesdayWednesday(21)(24)(31)(33)T25,T22,T2,T4,T7102013 0 12錯誤提示錯誤提示(34)T17112013 1 26SaturdaySaturday(21)(34)T18,T1,T3,T10122013 10 33錯誤提示錯誤提示(21)(22)(34)T33,T19132013 11 31錯誤提示錯誤提示(21)(23)(34)T34,T20142012 2 30錯誤提示錯誤提示(21)(24)(34)T12,T13,T25,T21,T23152013 2 29錯誤提示錯誤提示(21)(31)(34)T25,T24162013 12 31SaturdaySaturday(21)(22)(33)T35,T10172013 6 30SundaySunday(21)(23)(33)T29,T11182013 2 15FridayFriday(21)(24)(31)(33)T25,T22,T2,T4,T9190 12 12錯誤提示錯誤提示(34)T16題目四:選擇排序下面是選擇排序程序,其中datalist是數據表,它有兩個數據成員:一是元素類型為Element數組V,另一個是數組大小n。算法中用到兩個操作,一是取某數組元素Vi關鍵碼操作getKey ( ),一是交換兩數組元素內容操作Swap( ): void SelectSort ( datalist & list ) /對表list.V0到list.Vn-1進行排序, n是表當前長度。 for ( int i = 0; i list.n-1; i+ ) int k = i; /在list.Vi.key到list.Vn-1.key

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论