習題解答1_v2.0_第1頁
習題解答1_v2.0_第2頁
習題解答1_v2.0_第3頁
習題解答1_v2.0_第4頁
習題解答1_v2.0_第5頁
已閱讀5頁,還剩13頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、習題解答第三章黑盒測試及其用例1、NextDate 函數(P28)請使用等價類劃分法為 NextDate函數列出輸入域等價類表,并設計相應的測試用例。 解答:NextDate函數包含三個變量 mo nth、day和year,函數的輸出為輸入日期后一天的日期。 要求輸入變量 mon th、day和year均為整數值,并且滿足下列條件:1 < mon th w 12條件1條件 21 w day w 31條件 31912 w year w 2050分析程序規格說明中給出和隱含的對輸入條件的要求。列出等價類表*年份:閏年、非閏年(1912w year w 2050)*月份:1-12月*天數:1、

2、3、5、7、8、10、12 (31 天),4、6、9、11 (30 天),2( 28 或 29) 等價類表輸入條件有效等價類編號無效等價類編號年份閏年1年份不在(1912-2050)之間8非閏年2月份1、 3、 5、 7、 8、 10、 123月份不在1-12之間94、6、9、11425天數1-276非有效日期1028/29/30/317測試用例測試用例編號輸入數據預期輸出年份月份天數下一天日期120002282000-2-292198910101989-10-11319891311989-2-1420036302003-7-1520052282005-3-1620004292000-4-30

3、720082292000-3-18206042無法推算92030145無法推算102000230無法推算2、找零錢最佳組合(P47)假設商店貨品價格(R)都不大于100元(且為整數),若顧客付款(P)在 100元內,現有 一個程序能在每位顧客付款后給出找零錢的最佳組合(找給顧客貨幣張數最少)。假定此商店的貨幣面值只包括: 50元(N50)、10元(N10)、 5元(N5)、1元(N1)四種。請結合等價類劃分法和邊界值分析法為上述程序設計出相應的測試用例。解答:根據等價類劃分法和邊界值分析法的基本定義,得到下列基本認識: Step1 商品價格輸入:R 和顧客付款 P 有以下情況:R > 1

4、00 Step2 N50 = 10 < R < = 100 輸出:N50 = 0R <= 0P > 100R<= P <= 1004 > N10 >= 1 N10 = 0N5 = 1 N5 = 04 > N1 >= 1 N1 =0Step3找 50, 10, 5 元 貨分析規格中幣數每一決策點之情余金額。時之剩R > 100R <= 0 P > 100Step4. 由 上 述 之 輸 入 / 輸 出 R > 100RR1 >= 50 條件形,以RR1, RR2, RR3表示計算要RR2 >= 10組

5、合出可能RR3 >= 5情形。R <= 0 0 0R <= 100, P > 100 R <= 100, P < RR <= 100, R <= PR <= 100, R <= PR <= 100, R <= PR <= 100, R <= PR <= 100, R <= PR <= 100, R <= PR <= 100, R <= PR <= 100, R <= P<=<=<=<=<=<=<=<=100, RR

6、= 50100, RR = 49100, RR = 10100, RR = 9100, RR = 5100, RR = 4100, RR = 1100, RR = 0Step5. 為 貨品價格 貨品價格 貨品價格 貨品價格1.4.滿足以上之各種2. 貨品價格= 10110. 貨品價格 12. 貨品價格= 101= 100, 付款金額= 50, 付款金額= 90, 付款金額= 95, 付款金額= 99, 付款金額= 100= 100= 100= 05.計如下:測試資料3.貨品價格= 100,= 51, 付款金額貨品價格貨品價格貨品價格11. 貨品價格7.9.13. 貨品價格= -1 付款金額=

7、91, 付款金額= 96, 付款金額= 100, 付款金額 = 100= 100= 996.= 1008.= 100= 1003、使用因果圖法為三角形問題設計測試用例。 解答:Step1.列出原因結果:因為題劃分三角形主要是以邊是否相等作為依據的,因此添加三個條件如下:條件7 a=b 條件8 a=c 條件9為了在畫因果圖時表達簡便清楚,我們分別用 最終的到的輸出結果有以下四種,分別用 R1:邊輸入不正確IR2:普通三角形R3:等腰三角形IR4:等邊三角形I中間結果有四個:101(P61)b=c。C1C9代表條件1至條件9。R1, R2, R3, R4 代表:匸"匚340*1A邊范圍正

8、確可以構成三角形2:任意兩條邊相等I3:三條邊兩兩相等_Step2.畫出因果圖,如下:匚滬IX、1.號Z 0©匚74條件決策C4:a<b+c01111111C5:b<a+c-0111111C6:c<a+b-011111C7:a=b-11000C8:a=c-10100C9:b=c-10010R1:非三角形VR2:普通三角形VR3:等腰三角形VVVR4:等邊三角形V無輸出C1,Step3.將因果圖轉化成決策表如下: 為了簡化決策表的規模,先將條件C2, C3去掉。得到的決策表如下:測試用例編號輸入數據預期輸出abc12013非三角形21202非三角形31320非三角形4

9、666等邊三角形5665等腰三角形Step4.根據設計的決策表設計測試用例的輸入數據和預期輸出如下表:原因結果C1:年薪制員工R1 :扣年終風險金的 4%C2:非年薪制員工R2:扣年終風險金的 2%C3:嚴重過失R3:扣當月薪資的8%C4:過失R4:扣當月薪資的4%分析程序的規格說明,列出原因和結果。找原因與結果之間的因果關系、原因與原因之間的約束關系并畫出因果圖。將因果圖轉換成決策表。6656等腰三角形7566等腰三角形8345普通三角形4、某軟件的一個模塊的需求規格說明書中描述:(1 )年薪制員工:嚴重過失,扣年終風險金的4%;過失,扣年終風險金的 2%。(2)非年薪制員工:嚴重過失,扣當

10、月薪資的8%;過失,扣當月薪資的 4%。請繪制出因果圖和判定表,并給出相應的測試用例。解答:基本步驟如下:(1)12345678910111213141516C10000100110101111C20001001101010111C30010011000111011C40100010011011101R1000101R2010000R3100010R4001000根據(3)中的決策表,設計測試用例的輸入數據和預期輸出。用例編號輸入數據預期輸出1年薪制員工,過失扣年終風險金的 2%2年薪制員工,嚴重過失扣年終風險金的 4%3年薪制員工,過失,嚴重過失扣年終風險金的4%4非年薪制員工,過失扣當月薪

11、資的4%(4)得到的測試用例如下表:5非年薪制員工,嚴重過失扣當月薪資的8%6非年薪制員工,過失,嚴重過失扣當月薪資的8%(P74)(沒有教材)5、根據教材P85中給出的簡化后的決策表,設計相應的測試用例。6、 某軟件的一個模塊的需求規格說明書中描述:(P74)10年以上的“對于功率大于50馬力的機器或者維修記錄不全的或已經運行 機器應予以優先的維修處理 ”這里假定維修記錄不全”和優先維修處理”有嚴格的定義。請建立該需求的決策表,并繪制出化簡(合并規則)后的決策表。解答:根據題目意思,得到本題有三個條件:C1:功率大于50馬力C2:維修記錄不全C3:已經運行10年以上 三個條件有,三跌種選擇,

12、得到如下表的決策表。12345678條件C1:功率大于50馬力11110000C2:維修記錄不全11001100C3:運行超過10年10101010動作進行優先處理VVVVV作其他處理VVV合并后的決策表如下:12345條C1:功率大于50馬力11100件C2:維修記錄不全100-C3:運行超過10年-1010動進行優先處理VVV作作其他處理VV(P78)7、某城市電話號碼由三部分組成,分別是:地區碼一一空白或三位數字;前綴一一非或開頭的三位數字;后 綴 4位數字。假定被測程序能接受一切符合上述規定的電話號碼,拒絕所有不符合規定的電話號碼。要求:(1)請選擇適當的黑盒測試方法,寫出選擇該方法的

13、原因,并使用該方法的步驟,給出測試用例表。(2)如果所生成的測試用例不夠全面,請考慮用別的測試方法生成一些補充的測試用例。解答:(1 )采用等價類劃分方法, 因為這種方法設計出的測試用例比較全面,易于發現錯誤。輸入條件有效等價類編號無效等價類編號地區碼空白有非數字字符5少于3位數字63位數字多余3位數字7前綴200-9993有非數字字符8起始位為 0'9起始位為 T10少于3位字符11多于3位數字12后綴4位數字4有非數字字符13少于4位數字14多于4位數字15a. 首先為等價類表中的每一 個等價類分別規定一個唯一 的編號。b. 設計一個新的測試用例, 使 它能夠盡量覆蓋尚未覆蓋的 有

14、效等價類。重復這個步驟, 直到所有的有效等價類均被 測試用例所覆蓋。C.設計一個新的測試用例, 使它僅覆蓋一個尚未覆蓋的 無效等價類。重復這一步驟, 直到所有的無效等價類均被 測試用例所覆蓋。測試用例:測試用例 編號輸入數據預期輸出覆蓋等價類地區碼前綴后綴1空白1234567接受(有效)1, 3, 421238059876接受(有效)2, 3, 4320A1234567拒絕(無效)54332345678拒絕(無效)6512342344567拒絕(無效)761232B31234拒絕(無效)871230131234拒絕(無效)981231231234拒絕(無效)109123231234拒絕(無效)

15、111012323451234拒絕(無效)12111232341B34拒絕(無效)131212323434拒絕(無效)141312323233拒絕(無效)15445(2)上述方法設計出的測試用例已經相當完善,無須補充。 &有一個處理單價為 5角錢的飲料的自動售貨機,相應規格說明如下:若投入5角錢或1元錢的硬幣,按下橙汁或啤酒的按鈕,則相應的飲料就 送出來。(每次只投入一個硬幣,只押下一種飲料的按鈕) 如投入5角的硬幣,按下按鈕后,總有飲料送出。1元硬幣若售貨機沒有零錢找,則一個顯示零錢找完的紅燈會亮,這時再投入 并按下按鈕后,飲料不送出來而且1元硬幣也退出來。1元硬幣及按飲料按鈕,若有

16、零錢找,則顯示零錢找完的紅燈不會亮,若投入 則送出飲料的同時找回 5角硬幣。請選擇適當的黑盒測試方法,寫出選擇該方法的原因,并使用該方法的步驟,設計出 相應的測試用例。C3:投入5角硬幣解答: 采用因果圖法,步驟如下: Step1.分析程序的規格說明,列出原因和結果。 原因:C1:售貨機有零錢找C2:投入1元硬幣C4:押下橙汁按鈕C5:押下啤酒按鈕中間狀態:11.投入1元硬幣且押下飲料按鈕.按下橙汁或啤酒的按鈕13.應當找5角零錢并且售貨機有零錢找14.錢已付清結果:IR1:售貨機零錢找完燈亮R2:退還1元硬幣R3:退還5角硬幣R4:送出橙汁飲料R5:送出啤酒飲料Ste p2.找原因與結果之間

17、的因果關系、原因與原因之間的約束關系并畫出因果圖。©R3C3R42:0Step3.將因果圖轉換成決策表。(參考網絡)Step4.根據(3)中的決策表,設計測試用例的輸入數據和預期輸出。測試用例 編號輸入數據預期輸出C1售貨 機有零錢 找C2.投入1元硬幣C3投入5角硬幣C4按下橙汁按鈕C5按下啤酒按鈕111010退還5角硬幣,送出 橙汁飲料211001退還5角硬幣,送出 啤酒飲料311000退還1元硬幣410110送出橙汁飲料510101送出啤酒飲料610100退還5角硬幣710010系統無反應810001系統無反應901010售貨機零錢找完燈亮1001001售貨機零錢找完燈亮110

18、1000退還1元硬幣1200110送出橙汁飲料1300101送出啤酒飲料1400100退還5角硬幣1500010系統無反應1600001系統無反應第四章白盒測試及其用例1、根據下圖給出的程序流程圖,完成以下要求:(1)(2)(3)(4)(P12)畫出相應的控制流圖。 計算環形復雜度。給出相應的圖矩陣。 找出程序的獨立路徑集合。解答:(1)控制流圖如下所示:(2)環形復雜度為(3)圖矩陣:圖中 3,4,則圖矩陣為2+1=3(A<5)AND(B=5), X=X/A, (A=2)OR(X>2), X=X+1 四個節點分別標識為 1,2, 0 a b 00 0 c 00 0 0 e0 0

19、0 0(4)獨立路徑:總共 4條獨立路徑第一條:(A<5)AND(B=5) A=2)OR(X>2)第二條:(A<5)AND(B=5) =X/A =2)OR(X>2)第三條:(A<5)AND(B=5) =2)OR(X>2)X+1X=X+1第四條:(A<5)AND(B=5) =X/A 2)OR(X>2)要求分別滿足語句覆蓋、判定覆蓋、條(P32)2、為以下流程圖所示的程序段設計一組測試用例, 件覆蓋、判定/條件覆蓋、組合覆蓋和路徑覆蓋。解答:語句覆蓋:x=19,y=15,x=4,y=4,x=-8,y=-6判定覆蓋:x=19,y=15,x=4,y=4,

20、x=-8,y=-6x=9,y=9條件覆蓋:x=19,y=15x=-8,y=-6判定 / 條件覆蓋:x=19,y=15,x=4,y=4,x=-8,y=-6x=9,y=9組合覆蓋:x=19,y=15,x=4,y=4,x=-8,y=-6x= 19,y=-4路徑覆蓋:x=19,y=15,x=4,y=4,x=-8,y=-6x=9,y=93、使用基本路徑測試方法,為以下程序段設計測試用例。void Do (int X,i nt A,i nt B)(P48)1234if ( (A>1)&&(B=0)X = X/A;if ( (A=2)|(X>1)X = X+1;5 解答:為了得到

21、完整的測試用例,我們首先得到本題目的控制流圖,由于控制流圖是單條件的,我們將本題中的復合條件拆分為單個條件,如下:1:A>12:B=03:X=X/A 4:A=25:X>16:X=X+1 7:得到控制流圖如右邊:因為圖中共有5個區域,我們可以得到 5條獨立路徑如下: 路徑 路徑 路徑 路徑 路徑1:2:3:4:5:1f3 f 4 f7;1f 4f 5 f 6 f 7;1f 2f 4 f 6 f 7;1f 2f 4 f 5 f 7;1f 2f 3 f 4 f 5f 7。由獨立路徑設計的測試用例如下表:測試用例編碼路徑預期輸出X11 234567204321 456 7-1223431 246 7311241 245 732-2-251 234572043a, b, c。當三邊不可能構成三角形時提示錯誤, 等腰三角形”,若是等邊三角形, 并采用基本路徑測試方法為該程序設計測試4、在三角形問題中,要求輸入三個邊長:可構成三角形時計算三角形的周長。若是等腰三角形打印 則打印等邊三角形

溫馨提示

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

評論

0/150

提交評論