軟體測試實驗一
一、 實驗目的
- 掌握黑盒測試的基礎知識;
- 掌握黑盒測試的檢查內容及測試目的;
- 掌握黑盒測試的幾種基本測試方法:等價類劃分方法、邊界值分析方法、因果圖法和決策表法;
二、 實驗內容
實驗題目
1、設計函式實現輸入日期顯示星期幾,並用等價類及邊界值法測試
2、找零錢最佳組合
3、自動售貨機
4、航空服務查詢問題:根據航線,倉位,飛行時間查詢航空服務。
三、 設計思路及結果
- 設計函式實現輸入日期顯示星期幾,並用等價類及邊界值法測試題
① 設計程式
② 劃分等價類,得到等價類表。等價類表格式如下:
輸入條件 |
有效等價類 |
唯一標識 |
無效等價類 |
唯一標識 |
年 |
0<年 |
1 |
年<=0 |
7 |
月 |
1<=月<=12 |
2 |
月<1 月>12 |
8 9 |
日 |
月=1/3/5/7/8/10/12 1<=日<=31 |
3 |
月=1/3/5/7/8/10/12 日<=0 日>31 |
10 11 |
月=4/6/9/11 1<=日<=30 |
4 |
月=4/6/9/11 日<=0 日>30 |
12 13 |
|
閏年 月=2 1<=日<=29 |
5 |
閏年 月=2 日<=0 日>29 |
14 15 |
|
平年 月=2 1<=日<=28 |
6 |
平年 月=2 日<=0 日>28 |
16 17 |
③ 運用等價類劃分法設計測試用例,得到測試用例表。測試用例表格式如下:
序號 |
輸入資料 |
覆蓋等價類 |
輸出 |
1 |
2021-5-12 |
1、2、3 |
星期三 |
2 |
2020-9-20 |
1、2、4 |
星期日 |
3 |
2000-2-29 |
1、2、5 |
星期二 |
4 |
1999-2-28 |
1、2、6 |
星期日 |
5 |
0000-12-20 |
7、2、3 |
出錯 |
6 |
1988-0-4 |
1、8 |
出錯 |
7 |
2024-13-23 |
1、9 |
出錯 |
8 |
1888-7-0 |
1、2、10 |
出錯 |
9 |
1455-5-32 |
1、2、11 |
出錯 |
10 |
1689-4-0 |
1、2、12 |
出錯 |
11 |
456-9-31 |
1、2、13 |
出錯 |
12 |
2004-2-0 |
1、2、14 |
出錯 |
13 |
2008-2-30 |
1、2、15 |
出錯 |
14 |
1999-2-0 |
1、2、16 |
出錯 |
15 |
4229-2-29 |
1、2、17 |
出錯 |
④ 運用邊界值法設計測試用例。
{<1,6,23>,<2,6,23>,<2000,1,23>,<2000,2,23>,<2000,11,23>,<2000,12,23>,<2000,6,23>,<2000,6,1>,<2000,6,2>,<2000,5,30>,<2000,5,31>,<2000,6,29>,<2000,6,30>,<2000,2,28>,<2000,2,29>,<1999,2,27>,<1999,2,28>}
- 找零錢最佳組合
① 設計程式
② 劃分等價類,得到等價類表。等價類表格式如下:
輸入條件 |
有效等價類 |
唯一標識 |
無效等價類 |
唯一標識 |
錢數 |
1<=錢<=100 |
1 |
錢<1 錢>100 |
3 4 |
商品價格 |
1<=價格<=錢數 |
2 |
價格<1 價格>錢 |
5 6 |
③ 運用等價類劃分法設計測試用例,得到測試用例表。測試用例表格式如下:
序號 |
輸入資料 |
覆蓋等價類 |
輸出 |
1 |
50,3 |
1、2 |
4張10元 、 1張5元 、 2張1元 |
2 |
0,30 |
3、2 |
出錯 |
3 |
200,30 |
4,2 |
出錯 |
4 |
50,0 |
1、5 |
出錯 |
5 |
50,60 |
1、6 |
出錯 |
④ 運用邊界值法設計測試用例。
{<1,1>,<2,2>,<99,50>,<100,50>,<60,50>,<60,1>,<60,2>,<100,99>,<100,100> }
- 飲料自動售貨機
① 編寫程式
② 分析原因與結果
原因 |
結果 |
c1:投一元 |
e1:出五角 |
c2:投五角 |
e2:出啤酒 |
c3:選啤酒 |
e3:出橙汁 |
c4:選橙汁 |
|
③ 畫出因果圖
④ 轉化為決策表
|
1 |
2 |
3 |
4 |
|
輸入 |
1 |
Y |
Y |
N |
N |
0.5 |
N |
N |
Y |
Y |
|
啤酒 |
Y |
N |
Y |
N |
|
橙汁 |
N |
Y |
N |
Y |
|
輸出 |
0.5 |
√ |
√ |
|
|
啤酒 |
√ |
|
√ |
|
|
橙汁 |
|
√ |
|
√ |
⑤ 根據決策表設計測試用例,得到測試用例表
編號 |
金額 |
按鈕 |
結果 |
1 |
一元 |
啤酒 |
找五角、出啤酒 |
2 |
一元 |
橙汁 |
找五角、出橙汁 |
3 |
五角 |
啤酒 |
出啤酒 |
4 |
五角 |
橙汁 |
出橙汁 |
- 航空服務查詢
① 編寫程式
② 構造決策表
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
|
選擇 |
國外 |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
N |
N |
N |
N |
N |
N |
N |
N |
歐美 |
Y |
Y |
Y |
Y |
N |
N |
N |
N |
N |
N |
N |
N |
Y |
Y |
Y |
Y |
|
商務 |
Y |
Y |
N |
N |
Y |
Y |
N |
N |
Y |
Y |
N |
N |
Y |
Y |
N |
N |
|
超過2 |
Y |
N |
Y |
N |
Y |
N |
Y |
N |
Y |
N |
Y |
N |
Y |
N |
Y |
N |
|
服務 |
餐食 |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
- |
- |
- |
- |
電影 |
√ |
√ |
√ |
√ |
√ |
√ |
|
|
|
|
|
|
- |
- |
- |
- |
|
1 |
2 |
3 |
4 |
5 |
6 |
||||||||
選擇 |
國外 |
Y |
Y |
Y |
N |
N |
N |
|
||||||
歐美 |
Y |
N |
N |
N |
N |
N |
|
|||||||
商務 |
- |
Y |
N |
Y |
N |
N |
|
|||||||
超過2 |
- |
- |
- |
- |
Y |
N |
|
|||||||
服務 |
餐食 |
√ |
√ |
√ |
√ |
√ |
|
|
||||||
電影 |
√ |
√ |
|
|
|
|
|
|||||||
③ 根據決策表設計測試用例,得到測試用例表
編號 |
航線 |
倉位 |
飛行時間 |
服務 |
1 |
歐美 |
經濟艙 |
超過兩小時 |
餐食+電影 |
2 |
國外非歐美 |
商務艙 |
超過兩小時 |
餐食+電影 |
3 |
國外非歐美 |
經濟艙 |
兩小時內 |
餐食 |
4 |
國內 |
商務艙 |
兩小時內 |
餐食 |
5 |
國內 |
經濟艙 |
超過兩小時 |
餐食 |
6 |
國內 |
經濟艙 |
兩小時內 |
無 |
四、 個人體會
① 在實際的測試中,如何設計測試用例才能達到用最少的測試用例檢測出最多的缺陷;
選擇和實際情況相符合的測試方法。
② 在進行用例設計時,如何考慮軟體測試用例的充分性和減少軟體測試用例的冗餘性;
充分熟悉需求,精心選擇測試資料提高覆蓋率。
感覺在設計測試時,突然就把上課講的一步一步給忘記了,需要再重新看課程視訊熟悉一遍,以後一定做好課後複習。