版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單元測(cè)試實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)內(nèi)容1、系統(tǒng)地學(xué)習(xí)和理解單元測(cè)試的基本概念、原理,掌握單元測(cè)試的基本技術(shù)和方法;2、對(duì)三角形問(wèn)題采用開(kāi)發(fā)測(cè)試驅(qū)動(dòng)程序進(jìn)行單元測(cè)試,并給出測(cè)試結(jié)果;3、完成實(shí)驗(yàn)并認(rèn)真填寫(xiě)實(shí)驗(yàn)報(bào)告。二、問(wèn)題描述輸入三個(gè)整數(shù)a、b、c,分別作為三角形的三條邊,通過(guò)程序判斷這三條邊是否能構(gòu)成三角形?如果能構(gòu)成三角形,則判斷三角形的類(lèi)型(等邊三角形、等腰三角形、一般三角形)。要求輸入三個(gè)整數(shù)a、b、c,必須滿足以下條件:1飛夕00;1位磴00; 1«或00。請(qǐng)采用靜態(tài)白盒測(cè)試方法和動(dòng)態(tài)白盒測(cè)試方法設(shè)計(jì)測(cè)試用例。請(qǐng)采用驅(qū)動(dòng)程序開(kāi)發(fā)進(jìn)行單元測(cè)試。三、被測(cè)程序原代碼#include <
2、stdio.h>int main()int a;int b;int c;printf(" 請(qǐng)輸三角形邊長(zhǎng):");scanf("%d", &a);printf("n");printf(" 請(qǐng)輸三角形邊長(zhǎng):");scanf("%d", &b);printf("n");printf(" 請(qǐng)輸三角形邊長(zhǎng):");scanf("%d", &c);printf("n");if (a + b <=
3、 c | a + c <= b | b + c <= a)printf(" 不是三角形!n");elseif (a = c | a = b | b = c)if (a = c && a = b)printf("等邊三角形!n");elseprintf("等腰三角形!n");elseprintf("三角形!n");return 0;四、測(cè)試用例設(shè)計(jì)黑盒測(cè)試的邊界值加等價(jià)類(lèi)測(cè)試用例 編力輸入數(shù)據(jù)預(yù)期輸出覆蓋等價(jià)類(lèi)測(cè)試結(jié)果abc1100100100等邊三角形1,2,3,4,5,6,17等邊三角
4、形2505050等邊三角形1,2,3,4,5,6,17等邊三角形3150150150等邊三角形1,2,3,4,5,6,17等邊三角形450100100等腰三角形1,2,3,4,5,6,15等腰三角形510050100等腰三角形1,2,3,4,5,6,14等腰三角形610010050等腰三角形1,2,3,4,5,6,13等腰三角形7023不是三角形7不是三角形8213不是三角形12不是三角形9301不是三角形8不是三角形10312不是三角形10不是三角形11130不是三角形9不是三角形12231不是三角形11不是三角形13505152一般二角形1,2,3,4,5,6,16一般二角形1451525
5、0一般二角形1,2,3,4,5,6,16一般二角形15525051一般二角形1,2,3,4,5,6,16一般二角形16100100101一般二角形1,2,3,4,5,6,19,20等腰三角腰三角形1,2,3,4,5,6,18,20等腰三角腰三角形1,2,3,4,5,6,18,19等腰三角形19505051等腰三角形1,2,3,4,5,6,19,20等腰三角形20505150不是等邊三角形1,2,3,4,5,6,18,20等腰三角形21515050不是等邊三角形1,2,3,4,5,6,18,19等腰三角形五、驅(qū)動(dòng)程序源代碼#include &l
6、t;stdio.h>#include <string.h>int Triangle(int a,int b,int c)if (a + b <= c | a + c <= b | b + c <= a)return 0;elseif (a = c | a = b | b = c)if (a = c && a = b)return 3; elsereturn 2;elsereturn 1;void testTriangle()printf(" 這是 Triangle 的測(cè)試 n");int PassNum=0;/ 測(cè)試通過(guò)的
7、數(shù)量int FailNum=0;/測(cè)試沒(méi)有通過(guò)的數(shù)量FILE* pFpFrom=NULL;數(shù)據(jù)文件的指針,儲(chǔ)存測(cè)試用例的基 本信息FILE* pFpTo=NULL;/記錄測(cè)試用例執(zhí)行結(jié)果的文件的指針char* DataFileName="Data.txt"打開(kāi)測(cè)試文件,準(zhǔn)備讀取測(cè)試用例pFpFrom=fopen(DataFileName,"r");if(!pFpFrom)printf(" 讀取數(shù)據(jù)失敗,返回n");return;char* DataFileTestResultName="testTriangle.txt&qu
8、ot;/打開(kāi)數(shù)據(jù)文件pFpTo=fopen(DataFileTestResultName,"w+t");if(!pFpTo)printf(" 打開(kāi)文件失敗,返回n");return;fprintf(pFpTo," 對(duì)函數(shù) Triangle 的單元測(cè)試結(jié)果n");int TCID=0;int a,b,c;int expectedOutcome;int actualOutcome;/ 邊的輸入,預(yù)期輸出,實(shí)際輸出char* ex;char* ac;printf(" 對(duì)函數(shù)展開(kāi)單元測(cè)試n");while(!feof(pF
9、pFrom)/ 不斷讀取測(cè)試用例Idfscanf(pFpFrom,"%d",&TCID);/ 讀入測(cè)試用例的IDfscanf(pFpFrom,"%d",&a);/讀入測(cè)試用例的邊afscanf(pFpFrom,"%d",&b);/讀入測(cè)試用例的邊bfscanf(pFpFrom,"%d",&c);/讀入測(cè)試用例的邊cfscanf(pFpFrom,"%d",&expectedOutcome);/ 讀 入 測(cè) 試 用例的預(yù)期輸出actualOutcome=Tri
10、angle(a,b,c);/ 執(zhí)行測(cè)試用例if(expectedOutcome=3)ex=" 等邊三角形"else if(expectedOutcome=2) ex=" 等腰三角形"else if(expectedOutcome=1)ex=" 一般三角形"else if(expectedOutcome=0)ex=" 不是三角形"if(actualOutcome=3)ac=" 等邊三角形"else if(actualOutcome=2)ac=" 等腰三角形"else if(ac
11、tualOutcome=1)ac=" 一般三角形"else if(actualOutcome=0)ac=" 不是三角形"printf("測(cè)試用例 d:邊a:%d,邊b:%d,邊c:%d;預(yù)期輸出 s,實(shí)際輸出 s”,TCID,a,b,c,ex,ac);if(actualOutcome=expectedOutcome)PassNum+;printf(" 通過(guò) n");fprintf(pFpTo," 測(cè)試用例%d:Passn",TCID);elseFailNum+;printf(" 失敗 n&quo
12、t;);fprintf(pFpTo," 測(cè)試用例%d:Failn",TCID);fclose(pFpFrom);/ 關(guān)閉測(cè)試用例數(shù)據(jù)文件printf("共執(zhí)行d個(gè)測(cè)試用例,其中個(gè)通過(guò),d個(gè)失敗n",PassNum+FailNum,PassNum,FailNum);fprintf(pFpTo,” 共執(zhí)行d個(gè)測(cè)試用例,其中 個(gè)通過(guò),%d 個(gè)失敗 'n”,PassNum+FailNum,PassNum,FailNum);fclose(pFpTo);void main()testTriangle();(注:測(cè)試數(shù)據(jù)可以是以文本的方式也可以是數(shù)據(jù)庫(kù)的方式,至少執(zhí)行20條測(cè)試用例)六、驅(qū)動(dòng)程序測(cè)試結(jié)果(注:測(cè)試結(jié)果可以是以文本的方式輸出,也可以是控制臺(tái)輸出。)I 1 i zv<fimu ig|kvi -r!MOft
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 化工企業(yè)儲(chǔ)罐拆除與環(huán)保方案
- 綠色建筑玻璃走廊施工方案
- 高架橋路燈維護(hù)方案
- 文化活動(dòng)森林防火知識(shí)普及方案
- 二手摩托車(chē)交易協(xié)議書(shū)
- 老年人營(yíng)養(yǎng)膳食方案
- 化工廠安全生產(chǎn)防范方案
- 家裝行業(yè)專(zhuān)業(yè)分包施工合同細(xì)則
- 小貸公司資金運(yùn)作與管理制度
- 市政施工合同(2篇)
- 糧食倉(cāng)儲(chǔ)場(chǎng)建設(shè)項(xiàng)目可行性研究報(bào)告
- 輸送機(jī)施工方案.doc
- 海瀾之家特許經(jīng)營(yíng)協(xié)議合同
- 大眾汽車(chē)入侵北美市場(chǎng)
- 建設(shè)銀行員工勞動(dòng)合同
- 醫(yī)院醫(yī)用氣體管路的設(shè)計(jì)計(jì)算(2014)
- 人教版統(tǒng)編高中語(yǔ)文“文學(xué)閱讀與寫(xiě)作”學(xué)習(xí)任務(wù)群編寫(xiě)簡(jiǎn)介
- SQE質(zhì)量月報(bào)參考格式
- 初中物理實(shí)驗(yàn)室課程表
- CTQ-2型支線接觸網(wǎng)故障智能切除裝置概述
- 砂石料取樣試驗(yàn)標(biāo)準(zhǔn)與規(guī)范
評(píng)論
0/150
提交評(píng)論