版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目二NextDate()函數(shù)的測(cè)試2.1問(wèn)題情境2.2問(wèn)題分析2.3任務(wù)設(shè)計(jì)與實(shí)施2.4知識(shí)總結(jié)2.5應(yīng)用實(shí)踐
NextDate()函數(shù)是有三個(gè)變量month、day和year的函數(shù),輸出的是輸入日期后一天的日期。例如,輸入2010年4月1日,則該函數(shù)的輸出為2010年4月2日。對(duì)該函數(shù)的正確性、健壯性予以測(cè)試。2.1問(wèn)題情境
NextDate()函數(shù):輸入三個(gè)參數(shù)year、month和day組合成一個(gè)日期,要求輸入變量month、day和year均為整數(shù)值,并滿足下列條件:
條件1:1≤month≤12;
條件2:1≤day≤31;
條件3:1912≤year≤2050。2.2問(wèn)題分析
用邊界值分析法對(duì)NextDate()函數(shù)進(jìn)行正確性和健壯性測(cè)試。
步驟1:分析NextDate()函數(shù)的輸入?yún)?shù)與輸出參數(shù)(具體分析見(jiàn)2.2節(jié))。
步驟2:設(shè)計(jì)該程序的測(cè)試用例。
通過(guò)邊界值分析法,測(cè)試函數(shù)的健壯性,設(shè)計(jì)的測(cè)試用例如表2-1所示。2.3任務(wù)設(shè)計(jì)與實(shí)施表2-1測(cè)試用例的設(shè)計(jì)
續(xù)表步驟3測(cè)試程序并書寫測(cè)試結(jié)果報(bào)告。
用測(cè)試用例完成對(duì)程序的測(cè)試并書寫測(cè)試報(bào)告,測(cè)試結(jié)果如表2-2所示。表2-2測(cè)試結(jié)果
2.4.1黑盒測(cè)試方法——邊界值分析法
1.邊界值分析法的概念
邊界值分析法是對(duì)輸入或輸出的邊界值進(jìn)行測(cè)試的一種黑盒測(cè)試方法。通常,邊界值分析法可作為對(duì)等價(jià)類劃分法的補(bǔ)充,這種情況下,其測(cè)試用例來(lái)自等價(jià)類的邊界。在測(cè)試用例設(shè)計(jì)中,需要對(duì)輸入的條件進(jìn)行分析并且找出其中的邊界值條件,通過(guò)對(duì)這些邊界值的測(cè)試查找出更多的錯(cuò)誤。提出邊界值條件時(shí),一定要測(cè)試臨近邊界的有效數(shù)據(jù),同時(shí)測(cè)試剛超過(guò)邊界的無(wú)效數(shù)據(jù)。2.4知識(shí)總結(jié)
2.邊界值分析法的基本思想
邊界值分析法的基本思想是:選取正好等于、剛剛大于或剛剛小于邊界的值作為測(cè)試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值作為測(cè)試數(shù)據(jù)。邊界值分析法是最有效的黑盒測(cè)試法,但在邊界情況復(fù)雜的情況下,要找出適當(dāng)?shù)倪吔鐪y(cè)試用例,還需要針對(duì)問(wèn)題的輸入域、輸出域邊界,耐心細(xì)致地逐個(gè)進(jìn)行考察。
3.邊界值分析法與等價(jià)類劃分法的區(qū)別
(1)邊界值分析法不是從某等價(jià)類中隨便挑一個(gè)作為代表,而是要求這個(gè)等價(jià)類的每個(gè)邊界都要作為測(cè)試條件。
(2)邊界值分析法不僅要考慮輸入條件,還要考慮輸出結(jié)果的測(cè)試情況。
邊界值分析法使用與等價(jià)類劃分法相同的劃分,只是邊界值分析假定錯(cuò)誤更多地存在于劃分的邊界上,因此利用等價(jià)類的邊界以及兩側(cè)的情況設(shè)計(jì)測(cè)試用例。例1測(cè)試計(jì)算平方根的函數(shù)。
輸入:實(shí)數(shù)。
輸出:實(shí)數(shù)。
規(guī)格說(shuō)明:當(dāng)輸入一個(gè)0或比0大的數(shù)時(shí),返回其正平方根;當(dāng)輸入一個(gè)小于0的數(shù)時(shí),顯示錯(cuò)誤信息“平方根非法—輸入值小于0”并返回0。
用等價(jià)類劃分法進(jìn)行輸入的等價(jià)類劃分:
(1)可以考慮作出如下劃分:
輸入:(a)小于0;(b)大于等于0。
輸出:(c)
Error;(d)大于等于0。
(2)根據(jù)(1)的等價(jià)類劃分可以設(shè)計(jì)兩個(gè)測(cè)試用例:
·輸入4,輸出2。對(duì)應(yīng)于(b)和(d)。
·輸入
-10,輸出0和錯(cuò)誤提示。對(duì)應(yīng)于(a)和(c)。
用邊界值分析法設(shè)計(jì)測(cè)試用例:
劃分(b)的邊界為0和最大正實(shí)數(shù);劃分(a)的邊界為最小負(fù)實(shí)數(shù)和0。由此得到以下測(cè)試用例:
·輸入{最小負(fù)實(shí)數(shù)};
·輸入{絕對(duì)值很小的負(fù)數(shù)};
·輸入0;
·輸入{絕對(duì)值很小的正數(shù)};
·輸入{最大正實(shí)數(shù)}。
4.常見(jiàn)的邊界值及內(nèi)部邊界值條件
1)常見(jiàn)的邊界值
對(duì)16bit的整數(shù)而言,32767和
-32768是邊界;
屏幕上光標(biāo)在最左上、最右下位置;
報(bào)表的第一行和最后一行;
數(shù)組元素的第一個(gè)和最后一個(gè);
循環(huán)的第0次、第1次和倒數(shù)第2次、最后一次。
通常情況下,軟件測(cè)試所包含的邊界檢驗(yàn)有幾種類型:數(shù)字、字符、位置、質(zhì)量、大小、速度、方位、尺寸、空間等。相應(yīng)地,以上類型的邊界值應(yīng)該是在最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最短/最長(zhǎng)、空/滿等情況下的值,如表2-3所示。表2-3利用邊界值作為測(cè)試數(shù)據(jù)
2)內(nèi)部邊界值條件
在多數(shù)情況下,邊界值條件是基于應(yīng)用程序的功能設(shè)計(jì)而需要考慮的因素,可以從軟件的規(guī)格說(shuō)明或常識(shí)中得到,也是最終用戶可以很容易就發(fā)現(xiàn)問(wèn)題的條件。然而,在測(cè)試用例設(shè)計(jì)過(guò)程中,某些邊界值條件是不需要呈現(xiàn)給用戶的,或者說(shuō)用戶是很難注意到的,但它又確實(shí)屬于檢驗(yàn)范疇內(nèi)的邊界值條件,這樣的邊界值條件稱為內(nèi)部邊界值條件或子邊界值條件。內(nèi)部邊界值條件主要有下面幾種:
數(shù)值的邊界值檢驗(yàn);
字符的邊界值檢驗(yàn);
其他邊界值檢驗(yàn)。
在實(shí)際的測(cè)試用例設(shè)計(jì)中,需要將基本的軟件設(shè)計(jì)要求和程序定義的要求結(jié)合起來(lái),即結(jié)合基本邊界值條件和內(nèi)部邊界值條件來(lái)設(shè)計(jì)有效的測(cè)試用例。
(1)數(shù)值的邊界值檢驗(yàn)。計(jì)算機(jī)是基于二進(jìn)制進(jìn)行工作的,因此軟件的任何數(shù)值運(yùn)算都有一定的范圍限制,如表2-4所示。例如對(duì)字節(jié)進(jìn)行檢驗(yàn),邊界值條件可以設(shè)為254、255、256。表2-4計(jì)算機(jī)數(shù)值運(yùn)算的范圍
(2)字符的邊界值檢驗(yàn)。在計(jì)算機(jī)軟件中,字符也是很重要的表示元素,其中ASCII碼和Unicode碼是常見(jiàn)的編碼方式。表2-5中列出了一些常用字符對(duì)應(yīng)的ASCII碼值。表2-5常見(jiàn)字符的ASCII碼值在文本輸入或者文本轉(zhuǎn)換的測(cè)試過(guò)程中,需要非常清晰地了解ASCII碼的一些基本對(duì)應(yīng)關(guān)系,例如小寫字母z和大寫字母Z在表中的對(duì)應(yīng)是不同的,同時(shí)還必須考慮數(shù)據(jù)區(qū)域的劃分,從而定義有效等價(jià)類來(lái)設(shè)計(jì)測(cè)試用例。
(3)其他邊界值檢驗(yàn),包括默認(rèn)值、空值、空格、未輸入值、零、無(wú)效數(shù)據(jù)、不正確數(shù)據(jù)和干擾數(shù)據(jù)等。
5.基于邊界值分析方法選擇測(cè)試用例的原則
(1)如果輸入條件規(guī)定了值的范圍,則應(yīng)取剛達(dá)到這個(gè)范圍邊界的值,以及剛剛超越這個(gè)范圍邊界的值作為測(cè)試輸入數(shù)據(jù)。
例2如果程序的規(guī)格說(shuō)明中規(guī)定:“重量在10公斤至50公斤范圍內(nèi)的郵件,其郵費(fèi)計(jì)算公式為……”。作為測(cè)試用例,應(yīng)取10及50,還應(yīng)取10.01、49.99、9.99及50.01等。
(2)如果輸入條件規(guī)定了值的個(gè)數(shù),則用最大個(gè)數(shù)、最小個(gè)數(shù)、比最小個(gè)數(shù)少一、比最大個(gè)數(shù)多一的數(shù)作為測(cè)試數(shù)據(jù)。例3一個(gè)輸入文件應(yīng)包括1~255個(gè)記錄,則測(cè)試用例除可取1和255外,還應(yīng)取0及256等。
(3)將規(guī)則(1)和規(guī)則(2)應(yīng)用于輸出條件,即設(shè)計(jì)測(cè)試用例使輸出值達(dá)到邊界值及其左右的值。
例4某程序的規(guī)格說(shuō)明要求計(jì)算出“每月保險(xiǎn)金扣除額為0至1165.25元”,其測(cè)試用例可取0.00及1165.25,還可取
-0.01及1165.26等。
例5一個(gè)數(shù)據(jù)檢索系統(tǒng)的程序,要求每次“最少顯示1條、最多顯示4條情報(bào)摘要”,這時(shí)我們應(yīng)考慮的測(cè)試用例包括1和4,還應(yīng)包括0和5等。
(4)如果程序的規(guī)格說(shuō)明給出的輸入域或輸出域是有序集合,則應(yīng)選取集合的第一個(gè)元素和最后一個(gè)元素作為測(cè)試用例。
(5)如果程序中使用了一個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu),則應(yīng)當(dāng)選擇這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)邊界上的值作為測(cè)試用例。
(6)分析規(guī)格說(shuō)明,找出其他可能的邊界條件。2.4.2健壯性測(cè)試
健壯性測(cè)試(RobustnessTesting)又稱為容錯(cuò)性測(cè)試(FaultToleranceTesting)或魯棒性測(cè)試,用于測(cè)試系統(tǒng)在出現(xiàn)故障時(shí),是否能夠自動(dòng)恢復(fù)或者忽略故障繼續(xù)運(yùn)行。為了使系統(tǒng)具有良好的健壯性,要求設(shè)計(jì)人員在設(shè)計(jì)系統(tǒng)時(shí)必須周密細(xì)致,尤其要注意妥善地進(jìn)行系統(tǒng)異常的處理。
實(shí)際上,很多開(kāi)發(fā)項(xiàng)目的設(shè)計(jì)者在設(shè)計(jì)過(guò)程中很容易忽略系統(tǒng)關(guān)于容錯(cuò)方面的功能,這些多半是受到開(kāi)發(fā)時(shí)間、人力、物力的限制。因此,系統(tǒng)容錯(cuò)性差也成為目前軟件危機(jī)中的一個(gè)主要原因。不具備容錯(cuò)性能的系統(tǒng)不是一個(gè)優(yōu)秀的系統(tǒng),在市場(chǎng)上也很難被用戶所接納。一個(gè)好的軟件系統(tǒng)必須經(jīng)過(guò)健壯性測(cè)試之后才能最終交付給用戶。
健壯性測(cè)試是作為邊界值分析法的一個(gè)簡(jiǎn)單的擴(kuò)充,它除了對(duì)變量的邊界值分析取值外,還需要增加一個(gè)略大于最大值(max+)以及略小于最小值(min-)的取值,檢查超過(guò)極限值時(shí)系統(tǒng)的情況。因此,對(duì)于有n個(gè)變量的函數(shù),進(jìn)行健壯性測(cè)試時(shí)需要6n
+
1個(gè)測(cè)試用例。
說(shuō)明:如果程序規(guī)格說(shuō)明中沒(méi)有顯式地給出邊界值,則可以在設(shè)計(jì)測(cè)試用例前先設(shè)定取值的下限值和上限值。
1.對(duì)判斷三角形類型的程序進(jìn)行邊界值分析法測(cè)試(程序由讀者自行完成)。
(1)分析判斷三角形類型的程序的輸入?yún)?shù)與輸出參數(shù)。
三個(gè)輸入?yún)?shù)a、b和c分別作為三角形的三條邊,要求a、b和c必須滿足以下條件:
條件11≤a≤100
條件21≤b≤1002.5應(yīng)用實(shí)踐條件31≤c≤100
條件4a<b
+
c
條件5b<a
+
c
條件6c<a
+
b
程序輸出的是由這三條邊構(gòu)成的三角形類型:等邊三角形、等腰三角形、一般三角形或非三角形(不能構(gòu)成三角形)。如果輸入值不滿足這些條件中的任何一個(gè),則程序給出相應(yīng)的提示信息。
(2)設(shè)計(jì)該程序的測(cè)試用例。
通過(guò)等價(jià)類劃分法設(shè)計(jì)測(cè)試用例,如表2-6所示。
表2-6測(cè)試預(yù)期輸出
(3)測(cè)試三角形程序并書寫測(cè)試結(jié)果報(bào)告。
用測(cè)試用例完成對(duì)程序的測(cè)試并書寫測(cè)試報(bào)告。將上述測(cè)試用例逐一輸入到程序中,觀察并記錄結(jié)果,最后將其與預(yù)期輸出結(jié)果進(jìn)行對(duì)比,分析得出結(jié)論。測(cè)試結(jié)果如表2-7所示。通過(guò)等價(jià)類劃分法的測(cè)試可知,該程序無(wú)明顯錯(cuò)誤。表2-7測(cè)試輸出結(jié)果
2.現(xiàn)有一個(gè)學(xué)生標(biāo)準(zhǔn)化考試批閱試卷、產(chǎn)生成績(jī)報(bào)告的程序。其規(guī)格說(shuō)明如下。程序的輸入文件由一些有80個(gè)字符的記錄組成,所有記錄分為三組,如圖2-1所示。圖2-1學(xué)生標(biāo)準(zhǔn)化考試批閱試卷、產(chǎn)生成績(jī)報(bào)告程序的輸入記錄
(1)標(biāo)題:只有一個(gè)記錄,其內(nèi)容為輸出成績(jī)報(bào)告的名字。
(2)試卷各題標(biāo)準(zhǔn)答案記錄:每個(gè)記錄均在第80個(gè)字符處標(biāo)以數(shù)字“2”。該組的第一個(gè)記錄的第1~3個(gè)字符為題目編號(hào)(取值為1~999),第10~59個(gè)字符給出第1~50題的答案(每個(gè)合法字符表示一個(gè)答案)。該組的第2,第3,…
個(gè)記錄對(duì)應(yīng)第51~100,第101~150,…題的答案。
(3)每個(gè)學(xué)生的答卷描述:每個(gè)記錄的第80個(gè)字符均為數(shù)字“3”。每個(gè)學(xué)生的答卷在若干個(gè)記錄中給出。如學(xué)生甲的首記錄第1~9字符給出學(xué)生姓名及學(xué)號(hào),第10~59字符列出的是學(xué)生甲所做的第1至第50題的答案。若試題數(shù)超過(guò)50,則第2,第3,…記錄分別給出他的第51~100,第101~150,…題的解答。然后是學(xué)生乙的答卷記錄。
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新形勢(shì)下Mini LED行業(yè)快速做大市場(chǎng)規(guī)模戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)超聲熱量表行業(yè)資本規(guī)劃與股權(quán)融資戰(zhàn)略制定與實(shí)施研究報(bào)告
- 新形勢(shì)下北斗衛(wèi)星應(yīng)用行業(yè)可持續(xù)發(fā)展戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)廚房料理小家電行業(yè)并購(gòu)重組擴(kuò)張戰(zhàn)略制定與實(shí)施研究報(bào)告
- 市政道路竣工驗(yàn)收質(zhì)量評(píng)估報(bào)告-定稿
- 自動(dòng)變速器維修試題及答案2
- 微懸浮法糊樹(shù)脂新建項(xiàng)目可行性研究報(bào)告建議書申請(qǐng)格式范文
- 中國(guó)改善睡眠保健品行業(yè)全景評(píng)估及投資規(guī)劃建議報(bào)告
- 2024-2030年航空運(yùn)輸行業(yè)投資機(jī)會(huì)及風(fēng)險(xiǎn)投資運(yùn)作模式研究報(bào)告
- 四年級(jí)數(shù)學(xué)(四則混合運(yùn)算)計(jì)算題專項(xiàng)練習(xí)與答案匯編
- 高速服務(wù)區(qū)經(jīng)營(yíng)分析報(bào)告
- 浙江省湖州市2022-2023學(xué)年四年級(jí)上學(xué)期數(shù)學(xué)期末試卷(含答案)
- 現(xiàn)場(chǎng)工藝紀(jì)律檢查表
- 建井施工方案
- YMO青少年數(shù)學(xué)思維28屆五年級(jí)全國(guó)總決賽試卷
- 烘干廠股東合作協(xié)議書
- 個(gè)人業(yè)績(jī)相關(guān)信息采集表
- 過(guò)敏性紫癜課件PPT
- 大學(xué)生暑期社會(huì)實(shí)踐證明模板(20篇)
- 自來(lái)水維修員年度工作總結(jié)
- ASTMB117-2023年鹽霧試驗(yàn)標(biāo)準(zhǔn)中文
評(píng)論
0/150
提交評(píng)論