軟件測試決策表_第1頁
軟件測試決策表_第2頁
軟件測試決策表_第3頁
軟件測試決策表_第4頁
軟件測試決策表_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.軟件測試實驗報告題目 :決策表法的使用學(xué)號 :姓名 :教師 :東南大學(xué)成賢學(xué)院電子與計算機工程學(xué)院2017年 9月 30日方案 30%設(shè)計 30%文字表述 20%分析與總結(jié)20%總分.實驗題目1、實驗內(nèi)容NextDate 函數(shù)包含三個變量:month(月份)、 day(日期)和 year(年),函數(shù)的輸出為輸入日期前一天的日期。例如,輸入為 2007年 9 月 9 日,則函數(shù)的輸出為2007年9月10 日 。要求輸入變量month 、 day 和 year均為整數(shù)值,并且滿足下列條件:( 1) 1 month 12( 2) 1 day 31( 3) 1912 year 20502、實驗?zāi)康呐c

2、要求分別輸入測試用例,判斷期望輸出與實際輸出是否相等3、實驗環(huán)境操作系統(tǒng)WIN10測試工具VS2010測試語言c+ 語言4、設(shè)計思路分析(包括需求分析、整體設(shè)計思路、概要設(shè)計)需求分析:此函數(shù)的主要特點是輸入變量之間的邏輯關(guān)系比較復(fù)雜。復(fù)雜性的來源有兩個:一個是輸入域的復(fù)雜性,另一個是指閏年的規(guī)則。例如變量year 和變量 month 取不同的值,對應(yīng)的變量 day 會有不同的取值范圍,day 值的范圍可能是1 30 或 131,也可能是128 或 129。整體設(shè)計思路:NextDate 函數(shù)中包含了定義域各個變量之間的依賴問題。等價類劃分法和邊界值分析法只能“獨立地”選取各個輸入值,不能體現(xiàn)

3、出多個變量的依賴關(guān)系。決策表法則是根據(jù)變量間的邏輯依賴關(guān)系設(shè)計測試輸入數(shù)據(jù),排除不可能的數(shù)據(jù)組合,很好地解決了定義域的依賴問題。5、詳細設(shè)計NextDate 函數(shù)求解給定某個日期的下一個日期的可能操作(動作樁)如下:變量 day 加 1 操作;變量 day 復(fù)位操作;.變量 month 加 1 操作;變量 month 復(fù)位操作;變量 year 加 1 操作。根據(jù)上述動作樁發(fā)現(xiàn) NextDate 函數(shù)的求解關(guān)鍵是日和月的問題, 通??梢栽谙旅娴葍r類 (條件樁)的基礎(chǔ)上建立決策表:M1 month : month 有 30 天 M2 month : month 有 31 天, 12 月除外 M3

4、month : month 是 12 月 M4 month : month 是 2 月D1 day : 1 day 27D2 day : day 28D3 day : day 29D4 day : day 30D5 day : day 31Y1 year : year 是閏年 Y2 year : year 不是閏年 決策表共有22 條規(guī)則:第 15 條規(guī)則解決有 30 天的月份;第 610 條規(guī)則解決有 31 天的月份(除 12 月份以外);第 1115 條規(guī)則解決 12 月份;第 1622 條規(guī)則解決 2 月份和閏年的問題。不可能規(guī)則也在決策表中列出,比如第5 條規(guī)則中在有30 天的月份中也

5、考慮了31 日。表 1 輸入變量間存在大量邏輯關(guān)系的NextDate 函數(shù)決策表規(guī)則1234567891011選項條件:C1: monthM1M1M1M1M1M2M2M2M2M2M3在.C2: day 在D1D2D3D4D5D1D2D3D4D5D1C3: year在動作:A1:不可能A2: day加 1A3: day復(fù)位A4: month加 1A5: month復(fù)位規(guī)則1213141516171819202122選項條件:.C1: monthM3M3M3M3M4M4M4M4M4M4M4在C2: day 在D2D3D4D5D1D2D2D3D3D4D5C3: year 在Y1Y2Y1Y2動作:A1

6、:不可能A2: day加1A3: day復(fù)位A4: month加 1A5: month復(fù)位A6 :year 加1表 2 簡化的 NextDate 函數(shù)決策表:6,11,1,7,12,21,選項415161718192,51020規(guī)則8,13,223914.條件:C1: monMMMMMMMMMMMMM4th 在111223344444D1D1D1,C2: day,DDD2DD2DDDDDDD4,DD2,在4555122335,D3D3D3,D4D4C3: yearYYYY在1212動作:A1: 不可能A2: day加 1 A3: day復(fù)位A4: month 加 1A5: month 復(fù)位A6

7、 :year加 1.6、實驗結(jié)果與分析表 3 NextDate 函數(shù)的測試用例組測試用例MonthDayYear預(yù)期輸出實際輸出Test case 1-351520152015年5月 16日Test case 453020152015年5月 31日Test case 553120152015年6月 1日Test case 6-941520152015年4月 16日Test case 1043120152015年5月 1日Test case11-14121520152015 年 12 月 16日Test case 15123120152016 年1 月 1日Test case 162152015

8、2015 年2月16日Test case 1722820162016 年2月29日Test case 1822820152015 年3 月 1日Test case 1922920162016 年3 月 1日Test case 202292015不可能!.Testcase 21-222302015不可能!7、實驗體會與建議程序的實際輸出結(jié)果與預(yù)期結(jié)果不符合,但基本滿足實驗問題需求,基于決策表的測試對于某些應(yīng)用程序(例如 NextDate 函數(shù) )很有效,但是對另外一些簡單的應(yīng)用程序就不值得使用決策表了。附錄代碼#include "stdafx.h"bool NextDate(

9、int i,int j,int k)if(i>=1960&&i<=2050&&j>=1&&j<=12&&k>=1&&k<=31)if(k>=1&&k<=27)k+;elseswitch(k)case 31:if(j=1|j=3|j=5|j=7|j=8|j=10)k=1;j+;.else if(j=12)k=1;j=1;i+;elsereturn false;break;case 30:if(j=4|j=6|j=9|j=11)k=1;j+;else if

10、(j=2)return false;elsek+;break;case 29:if(j=2&&(i%4=0&&i%100!=0)|i%400=0)k=1;j+;else if(j!=2)k+;elsereturn false;.break;case 28:if(j=2&&(i%4=0&&i%100!=0)|i%400=0)k+;else if(j!=2)k+;elsek=1;j+;break;elsereturn false;cout<<i<<"/"<<j<<"/"<<k<<endl;int main()int day,month,year;while(1)cout<<" 請輸入年、月、日:"<<endl;cin>>year

溫馨提示

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

最新文檔

評論

0/150

提交評論