學(xué)生選課系統(tǒng)白盒測試_第1頁
學(xué)生選課系統(tǒng)白盒測試_第2頁
學(xué)生選課系統(tǒng)白盒測試_第3頁
學(xué)生選課系統(tǒng)白盒測試_第4頁
學(xué)生選課系統(tǒng)白盒測試_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、實(shí)驗(yàn)報(bào)告課程名稱:軟件測試方法和技術(shù)學(xué)生姓名:劉成立、龍?zhí)鹪合担河?jì)算機(jī)班級:1202組別:1任課教師:張建東指導(dǎo)老師:張建東合用標(biāo)準(zhǔn)文案目錄一、學(xué)生選課系統(tǒng)選課以及退選流程圖2二、語句覆蓋:42.1:語句覆蓋過程解析:2.2:語句覆蓋測試用例:三、判斷覆蓋:53.1:判斷覆蓋過程解析:3.2:判斷覆蓋測試用例:四、條件覆蓋:64.1:條件覆蓋過程解析:4.2:條件覆蓋測試用例:五、判斷-條件覆蓋:75.1:判斷-條件覆蓋過程解析:5.2:判斷-條件覆蓋測試用例:六、條件組合覆蓋:86.1:條件組合覆蓋過程解析:6.2:條件組合覆蓋測試用例:七、路徑覆蓋:97.1:路徑覆蓋過程解析:7.2:路徑

2、覆蓋測試用例:八、實(shí)驗(yàn)總結(jié):11九、源代碼:12優(yōu)秀文檔合用標(biāo)準(zhǔn)文案實(shí)驗(yàn)一白盒測試用例設(shè)計(jì)一、學(xué)生選課系統(tǒng)選課以及退選流程圖:1.1學(xué)生選課系統(tǒng)選課流程圖:Ta=0?輸出:該課A程不存在FFb0&BbCno|輸出:課程a0號輸入有誤FTBb=0?輸出:該課程不存在CF是否T退選課程重新c=1?退選課?TFDd=1?輸出:退選成功F輸出:你還未選此門課程說明:條件A為,判斷課程號可否輸入有誤?條件B為,判斷課程號可否存在?優(yōu)秀文檔合用標(biāo)準(zhǔn)文案條件C為,判斷可否重新退選?條件D為,判斷退選可否成功?二、語句覆蓋:2.1:語句覆蓋過程解析:語句覆蓋的基本思想是設(shè)計(jì)若干測試用例,使得運(yùn)行被測試程序時(shí),

3、每個可執(zhí)行語句最少被執(zhí)行一次。2.2:語句覆蓋測試用例:2.2.1選課功能語句覆蓋測試用例:編號輸入條條條條條條預(yù)期結(jié)果Ok件件件件件件/ABCDEHNgP1a=0,TT該課程不存在,重選Oke=1P2a!=0,FTTTF該課程選過了,選課結(jié)Ok0b&bCno,束c=1,d=1,e!=1P3a!=0,FTTFFT選課成功Ok0b&bCno,c=1,d!=1,e!=1hmaxP4a!=0,FTTFF該課程人數(shù)已滿,選課Ok0b&bmax2.2.2退選功能語句覆蓋測試用例:編號輸入條件條件條件條件預(yù)期結(jié)果Ok/ABCDNgP1aCno|a0,T課程號輸入有Ok誤,重退選P2a0,FTT課程不存在,

4、重Okb=0,c=1退選P3a0,FFFT退選成功,不再Okb!=0,c!=1,d=1退選P4a0,FFF未選此課,退選Okb!=0,c!=1,d!=1結(jié)束優(yōu)秀文檔合用標(biāo)準(zhǔn)文案三、判斷覆蓋:3.1:判斷覆蓋過程解析:判斷覆蓋的基本思想是設(shè)計(jì)若干用例,使得運(yùn)行被測程序,使每個判斷的真假分支最少經(jīng)歷一次。3.2:判斷覆蓋測試用例:3.2.1選課功能判斷覆蓋測試用例:編號輸入條條條條條條預(yù)期結(jié)果Ok件件件件件件/ABCDEHNgP1a=0,e=1TT該課程不存在,重選OkP2a!=0,FFF超出課程范圍,選課Ok0b|bCno,結(jié)束e!=1P3a!=0,FTFF不選該課程,選課結(jié)Ok0b&bCno,

5、束c!=1,e!=1P4a!=0,FTTTF該課程選過來,選課Ok0b&bCno,結(jié)束C=1,d=1,e!=1P5a!=0,FTTFFT選課人滿,選課結(jié)束Ok0b&bCno,C=1,d!=1,e!=1,h=maxP6a!=0,FTTFF選課成功Ok0b&bCno,C=1,d!=1,HCno|a0,T課程號輸入有誤OkP2a0,FTT課程號不存在,Okb=0,c=1重新退選P3a0,FFFT退選成功,結(jié)束Okb!=0,c!=1,d=1退選P4a0,FFF未選此門課程,Okb!=0,c!=1,d!=1結(jié)束退選優(yōu)秀文檔合用標(biāo)準(zhǔn)文案四、條件覆蓋:4.1:條件覆蓋過程解析:條件覆蓋的基本思想是,設(shè)計(jì)若干

6、測試用例,運(yùn)行程序,使得每個判斷中的可能取值最少滿足一次。4.2:條件覆蓋測試用例:4.2.1選課功能條件覆蓋測試用例:編輸入條條條條條條預(yù)期結(jié)果Ok/號件件件件件件NgABCDEHP1a=0,b=1TT該課程不存在,Ok重選P2A!=0,FTTFT選課人滿,選課Ok0b&bCno,結(jié)束c=1,d!=1,h=maxP3A!=0,FTTTF該課程選過來,Ok0b&bCno,c選課結(jié)束=1,d!=1,H!=maxP4A!=0,FTFTF選課成功Ok0b&bCno,e!=1重選P6A!=0,FFF該課程不存在,OkbCnoT課程號輸入有誤OkP2A0,b=0,c=1T課程號輸入有誤OkP3a0,FT

7、T課程號不存在,重新退選Okb!=0,c=1優(yōu)秀文檔合用標(biāo)準(zhǔn)文案P4P5a0,FFFT退選成功,結(jié)束退選Okb!=0,c!=1,d=1a0,FFF未選此門課程,結(jié)束退選Okb!=0,d!=1五、判斷-條件覆蓋:5.1:判斷-條件覆蓋過程解析:判斷-條件覆蓋的基本思想是,設(shè)計(jì)若干測試用例,運(yùn)行程序,使得判斷條件中的所有可能最少執(zhí)行一次,同時(shí),所有判斷的可能結(jié)果最少執(zhí)行一次。5.2:判斷-條件覆蓋測試用例:5.2.1選課功能判斷-條件覆蓋測試用例:Ok/編輸入條條條條條條預(yù)期結(jié)果號件件件件件件NgABCDEHOkP1a=0,b=1TT該課程不存在,重選P2A!=0,FTTFT選課人滿,選課結(jié)束Ok

8、0b&bCno,c=1,d!=1,h=maxP3A!=0,FTTTF該課程選過來,選課Ok0b&bCno,結(jié)束c=1,d!=1,H!=maxP4A!=0,FTTTF選課成功Ok0b&bCno,e!=1P6A!=0,FFF該課程不存在,重選Okb0,e!=1P7a!=0,FTFF取消選課,結(jié)束選課Ok0b&bCnoT課程號輸入有誤A0,b=0,T課程號輸入有誤Okc=1P3P4P5a0,FTT課程號不存在,重新退選Okb!=0,c=1a0,FFFT退選成功,結(jié)束退選Okb!=0,c!=1,d=1a0,FFF未選此門課程,結(jié)束退選Okb!=0,d!=1六、條件組合覆蓋:6.1:條件組合覆蓋過程解析

9、:條件組合覆蓋的基本思想是,設(shè)計(jì)若干測試用例,運(yùn)行程序,使得每個條件中的所有可能最少出現(xiàn)一次,而且每個判斷的結(jié)果也最少出現(xiàn)一次。6.2:條件組合覆蓋測試用例:6.2.1選課功能條件組合覆蓋測試用例:編輸入條條條條條條預(yù)期結(jié)果Ok/號件件件件件E件NgABCDHP1a=0,b=1TT該課程不存在,Ok重選P2A!=0,FTTFT選課人滿,選課Ok0b&bCno,結(jié)束c=1,d!=1,h=maxP3A!=0,FTTTF該課程選過來,Ok0b&bCno,選課結(jié)束c=1,d!=1,H!=maxP4A!=0,FTTTF選課成功Ok0b&bCno,e!=1P6A!=0,FFFb0,e!=1P7a!=0,F

10、TFF0b&bb&bCno,a!=0,FFF6.2.2退選功能條件組合覆蓋測試用例:編輸入條件條條條號A件件件DBCP1ACnoTP2A0,b=0,c=1TP3a0,FTTb!=0,c=1P4a0,FFFTb!=0,c!=1,d=1P5a0,FFFb!=0,d!=1P6ACno|a0,T七、路徑覆蓋:7.1:路徑覆蓋過程解析:該課程不存在,Ok重選該課程不存在,Ok重選取消選課,結(jié)束Ok選課取消選課,結(jié)束選課預(yù)期結(jié)果Ok/Ng課程號輸入有誤Ok課程號輸入有誤Ok課程號不存在,重新Ok退選退選成功,結(jié)束退選Ok未選此門課程,結(jié)束Ok退選課程號輸入有誤Ok路徑覆蓋的基本思想是,設(shè)計(jì)所有的測試用例,

11、來覆蓋程序中的所有可能的執(zhí)行路徑。7.2:路徑覆蓋測試用例:7.2.1選課功能路徑覆蓋測試用例:優(yōu)秀文檔合用標(biāo)準(zhǔn)文案編輸入條條條條條條預(yù)期結(jié)果Ok/號件件件件件E件NgABCDHP1a=0T該課程不存在,Ok重選P2a=0,e=1T該課程不存在,Ok重選P3a=0,bTF可否重新選課Ok=0P4a=0,b0&b0&b0&b0&bCno|a0TP2A=0FTB=0P3A=0FTB!=0,d=1P4A=0FTB!=0,d!=1P5C=1P6C!=1條條預(yù)期結(jié)果Ok/件件DNgCOk課程號輸入有誤該課程不存在OkT退選成功OkF你還未選此門課OkT重新退選OkF退出系統(tǒng)Ok優(yōu)秀文檔合用標(biāo)準(zhǔn)文案八、實(shí)

12、驗(yàn)總結(jié):對于白盒測試,在設(shè)計(jì)測試用例時(shí)第一對程序進(jìn)行解析,從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測試用例,涉及到程序的控制方法、源語句、編碼細(xì)節(jié)、數(shù)據(jù)庫設(shè)計(jì)等。設(shè)計(jì)測試用例時(shí)應(yīng)用了白盒測試中的多種測試方法,其中包括:測試覆蓋(語句覆蓋、分支覆蓋、分支條件覆蓋等)、基路徑測試等方法。白盒測試中,對代碼的測試比較透徹,但不簡單生成測試用例,而且測試工作量很大。因?yàn)榘缀袦y試是基于代碼的基礎(chǔ)上,所以對變量的定義、數(shù)據(jù)的解析、精度的胸襟都有嚴(yán)格的要求。同時(shí),對于白盒測試的案例設(shè)計(jì),要注意以下幾點(diǎn):1)保證每個模塊中的所有獨(dú)立路徑最少被執(zhí)行一次;2)對所有的邏輯值均需要測試真、假兩個分支;3)在上下界線及可操作范圍內(nèi)運(yùn)

13、行所有循環(huán);4)檢查內(nèi)部數(shù)據(jù)結(jié)構(gòu)以保證其有效性。在測試中,也出現(xiàn)了一些不足:在選課模塊中,有一個條件語句是判斷所輸入的課程號可否存在。當(dāng)所輸入課程號不存在的時(shí)候,程序跳轉(zhuǎn)到重新開始選課。這個判斷,存在弊端。只能判斷數(shù)字,對于其他的數(shù)據(jù)種類,缺少錯誤輸入判斷。在選課模塊中,有一個條件語句是判斷可否確認(rèn)選擇。輸入選項(xiàng)有1和2,當(dāng)輸入為其他數(shù)據(jù)種類時(shí),程序界面一閃而過,退回到學(xué)生界面。在退選模塊中,有一個條件語句是判斷可否確認(rèn)退選。輸入選項(xiàng)有1和2,當(dāng)輸入為其他數(shù)據(jù)種類時(shí),程序出錯。九、源代碼:voidselect(intXH)/*選課*/leap1:system(color70);intcn,i,

14、j,Cn,k;intp=0;chart20;printf(課程號課程名上課時(shí)間上課地點(diǎn)上課老師老師編號課程人數(shù)n);/*增加*/for(k=0;k=CPMAX;k+)/*增加*/if(Couk.Cno=0)break;for(i=0;ik;i+)printf(%3d%10s%9.2f,Coui.Cno,Coui.Cname,Coui.time);優(yōu)秀文檔合用標(biāo)準(zhǔn)文案printf(%10s%8s%9d%9dn,Coui.place,Coui.teacher,Coui.Tno,Coui.pn);/*增加*/printf(請輸入課程序號n);scanf(%d,&cn);Cn=cn-1;if(CouC

15、n.Cno=0)printf(該課程不存在n);printf(可否連續(xù)選課?1是2否n);scanf(%d,&j);if(j=1)system(cls);gotoleap1;elseif(Cn=0)printf(課程號課程名上課時(shí)間上課地點(diǎn)上課老師老師編號課程人數(shù)n);printf(%3d%10s%9.2f,CouCn.Cno,CouCn.Cname,CouCn.time);printf(%10s%8s%9d%9dn,CouCn.place,CouCn.teacher,CouCn.Tno,CouCn.pn);printf(可否選擇該課程?1是2否n);scanf(%d,&j);if(j=1)f

16、or(j=1;j0)printf(你所選課程已滿不能夠再進(jìn)行選擇n);優(yōu)秀文檔合用標(biāo)準(zhǔn)文案elseif(CouCn.pn=CPMAX)printf(該門課人數(shù)已滿);printf(可否重新選課?1是2否n);scanf(%d,&i);if(i=1)system(cls);gotoleap1;/*1111*/elseif(StudentXH1=0)StudentXH1=CouCn.Cno;elseif(StudentXH2=0)StudentXH2=CouCn.Cno;elseif(StudentXH3=0)StudentXH3=CouCn.Cno;elseStudentXH4=CouCn.Cn

17、o;CouCn.pn=CouCn.pn+1;printf(選課成功!n);printf(可否連續(xù)選課?1是2否n);scanf(%d,&j);if(j=1)system(cls);gotoleap1;elseprintf(可否連續(xù)選課?1是2否n);scanf(%d,&j);if(j=1)system(cls);gotoleap1;elseprintf(該課程不存在n);printf(可否連續(xù)選課?1是2否n);scanf(%d,&j);if(j=1)system(cls);gotoleap1;printf(任意鍵返回n);scanf(%s,&t);system(cls);printf(%s歡

18、迎回來!n,SXH.Sname);system(color80);printf(#n);優(yōu)秀文檔合用標(biāo)準(zhǔn)文案printf(#n);printf(#n);printf(#1選課盤問#n);printf(#n);printf(#2選課#n);printf(#n);printf(#3選課退選#n);printf(#n);printf(#n);printf(#B返回#n);printf(#n);scanf(%d,&i);if(i=1)system(cls);search(XH);elseif(i=2)system(cls);select(XH);elseif(i=3)system(cls);DropC(XH);elsesystem(cls);jiemian();voidDropC(intXH)/*課程退選*/leap2:inti,j,k;charl20;intm=0;printf(您已選擇的課程為:n);printf(課程號課程名上課時(shí)間上課地點(diǎn)上課老師老師編號課程人數(shù)n);for(j=1;jCNO|i0)printf(輸入有誤n);gotoleap2;elseif(Coui-1.Cno=0)printf(該課程不存在n);printf(可否重新退選課程?1是2否n);scanf(%d,&k);if(k=1)system(cls);gotoleap2;elsefor(j=1;j=4;

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論